8#ifndef GrMtlRenderTarget_DEFINED
9#define GrMtlRenderTarget_DEFINED
18#import <Metal/Metal.h>
65 std::string_view label);
82 enum Wrapped { kWrapped };
88 std::string_view label);
90 bool completeStencilAttachment(
GrAttachment* stencil,
bool useMSAASurface)
override;
96 inline static constexpr int kNumCachedFramebuffers = 4;
id< MTLTexture > mtlTexture() const
~GrMtlRenderTarget() override
GrMtlAttachment * colorAttachment() const
GrMtlAttachment * nonMSAAAttachment() const
GrMtlGpu * getMtlGpu() const
id< MTLTexture > colorMTLTexture() const
void onSetLabel() override
size_t onGpuMemorySize() const override
bool canAttemptStencilAttachment(bool useMSAASurface) const override
static sk_sp< GrMtlRenderTarget > MakeWrappedRenderTarget(GrMtlGpu *, SkISize, int sampleCnt, id< MTLTexture >)
sk_sp< GrMtlAttachment > fColorAttachment
id< MTLTexture > resolveMTLTexture() const
sk_sp< GrMtlAttachment > fResolveAttachment
const GrMtlFramebuffer * getFramebuffer(bool withResolve, bool withStencil)
GrBackendFormat backendFormat() const override
GrBackendRenderTarget getBackendRenderTarget() const override
void onAbandon() override
GrMtlAttachment * resolveAttachment() const
GrMtlRenderTarget(GrMtlGpu *gpu, SkISize, sk_sp< GrMtlAttachment > colorAttachment, sk_sp< GrMtlAttachment > resolveAttachment, std::string_view label)
void onRelease() override
GrRenderTarget(GrGpu *, const SkISize &, int sampleCount, GrProtected, std::string_view label, sk_sp< GrAttachment > stenicl=nullptr)