#pragma once
#include"com.h"#include"comimpl.h"#include"ferro-native.h"@protocolIRenderTarget-(void)resize:(FrnPixelSize)sizewithScale:(float)scale;-(CALayer*)layer;@end@interfaceIOSurfaceRenderTarget:NSObject<IRenderTarget>-(IOSurfaceRenderTarget*)initWithOpenGlContext:(IFrnGlContext*)context;-(IFrnGlSurfaceRenderTarget*)createSurfaceRenderTarget;-(IFrnSoftwareRenderTarget*)createSoftwareRenderTarget;-(HRESULT)setSwFrame:(FrnFramebuffer*)fb;-(void)consumeSurfaces;@end@interfaceMetalRenderTarget:NSObject<IRenderTarget>-(MetalRenderTarget*)initWithDevice:(IFrnMetalDevice*)device;-(void)getRenderTarget:(IFrnMetalRenderTarget**)ppv;@end