5#ifndef FLUTTER_SHELL_PLATFORM_DARWIN_GRAPHICS_FLUTTERDARWINEXTERNALTEXTUREMETAL_H_
6#define FLUTTER_SHELL_PLATFORM_DARWIN_GRAPHICS_FLUTTERDARWINEXTERNALTEXTUREMETAL_H_
8#import <Foundation/Foundation.h>
15#include "third_party/skia/include/core/SkImage.h"
19+ (sk_sp<SkImage>)wrapYUVATexture:(nonnull
id<MTLTexture>)yTex
20 UVTex:(nonnull
id<MTLTexture>)uvTex
21 YUVColorSpace:(SkYUVColorSpace)colorSpace
22 grContext:(nonnull GrDirectContext*)grContext
24 height:(
size_t)height;
26+ (sk_sp<SkImage>)wrapRGBATexture:(nonnull
id<MTLTexture>)rgbaTex
27 grContext:(nonnull GrDirectContext*)grContext
29 height:(
size_t)height;
35+ (sk_sp<
flutter::DlImage>)wrapYUVATexture:(nonnull
id<MTLTexture>)yTex
36 UVTex:(nonnull
id<MTLTexture>)uvTex
37 YUVColorSpace:(
impeller::YUVColorSpace)colorSpace
38 aiksContext:(nonnull
impeller::AiksContext*)aiksContext;
40+ (sk_sp<
flutter::DlImage>)wrapRGBATexture:(nonnull
id<MTLTexture>)rgbaTex
41 aiksContext:(nonnull
impeller::AiksContext*)aiks_context;
47- (nullable instancetype)initWithTextureCache:(nonnull CVMetalTextureCacheRef)textureCache
48 textureID:(int64_t)textureID
50 enableImpeller:(
BOOL)enableImpeller;
52- (void)paintContext:(
flutter::Texture::PaintContext&)context
53 bounds:(const SkRect&)bounds
55 sampling:(const
flutter::DlImageSampling)sampling;
void onGrContextDestroyed()
void onGrContextCreated()
void onTextureUnregistered()
void markNewFrameAvailable()