| Flutter iOS Embedder |

ios_external_texture_metal.h
Go to the documentation of this file.
1 // Copyright 2013 The Flutter Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef FLUTTER_SHELL_PLATFORM_DARWIN_IOS_IOS_EXTERNAL_TEXTURE_METAL_H_
6 #define FLUTTER_SHELL_PLATFORM_DARWIN_IOS_IOS_EXTERNAL_TEXTURE_METAL_H_
7
8 #include "flutter/common/graphics/texture.h"
9 #include "flutter/fml/macros.h"
10 #include "flutter/fml/platform/darwin/scoped_nsobject.h"
11 #import "flutter/shell/platform/darwin/graphics/FlutterDarwinExternalTextureMetal.h"
12
13 namespace flutter {
14
15 class IOSExternalTextureMetal final : public Texture {
16 public:
17 explicit IOSExternalTextureMetal(
18 const fml::scoped_nsobject<FlutterDarwinExternalTextureMetal>&
19 darwin_external_texture_metal);
20
21 // |Texture|
22 ~IOSExternalTextureMetal();
23
24 private:
25 fml::scoped_nsobject<FlutterDarwinExternalTextureMetal>
26 darwin_external_texture_metal_;
27
28 // |Texture|
29 void Paint(PaintContext& context,
30 const SkRect& bounds,
31 bool freeze,
32 const DlImageSampling sampling) override;
33
34 // |Texture|
35 void OnGrContextCreated() override;
36
37 // |Texture|
38 void OnGrContextDestroyed() override;
39
40 // |Texture|
41 void MarkNewFrameAvailable() override;
42
43 // |Texture|
44 void OnTextureUnregistered() override;
45
46 FML_DISALLOW_COPY_AND_ASSIGN(IOSExternalTextureMetal);
47 };
48
49 } // namespace flutter
50
51 #endif // FLUTTER_SHELL_PLATFORM_DARWIN_IOS_IOS_EXTERNAL_TEXTURE_METAL_H_
flutter::IOSExternalTextureMetal::~IOSExternalTextureMetal
~IOSExternalTextureMetal()
flutter::IOSExternalTextureMetal
Definition: ios_external_texture_metal.h:15
flutter
Definition: accessibility_bridge.h:28
flutter::IOSExternalTextureMetal::IOSExternalTextureMetal
IOSExternalTextureMetal(const fml::scoped_nsobject< FlutterDarwinExternalTextureMetal > &darwin_external_texture_metal)
Definition: ios_external_texture_metal.mm:10