5#ifndef FLUTTER_SHELL_PLATFORM_DARWIN_GRAPHICS_FLUTTERDARWINEXTERNALTEXTUREMETAL_H_
6#define FLUTTER_SHELL_PLATFORM_DARWIN_GRAPHICS_FLUTTERDARWINEXTERNALTEXTUREMETAL_H_
8#import <Foundation/Foundation.h>
11#include "flutter/common/graphics/texture.h"
12#import "flutter/shell/platform/darwin/common/framework/Headers/FlutterTexture.h"
18+ (
sk_sp<
SkImage>)wrapYUVATexture:(nonnull
id<MTLTexture>)yTex
19 UVTex:(nonnull
id<MTLTexture>)uvTex
23 height:(
size_t)height;
25+ (
sk_sp<
SkImage>)wrapRGBATexture:(nonnull
id<MTLTexture>)rgbaTex
28 height:(
size_t)height;
34- (nullable instancetype)initWithTextureCache:(nonnull CVMetalTextureCacheRef)textureCache
35 textureID:(int64_t)textureID
37 enableImpeller:(
BOOL)enableImpeller;
39- (void)paintContext:(
flutter::Texture::PaintContext&)context
40 bounds:(const
SkRect&)bounds
void onGrContextDestroyed()
void onGrContextCreated()
void onTextureUnregistered()
void markNewFrameAvailable()