| 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 #import "flutter/shell/platform/darwin/graphics/FlutterDarwinExternalTextureMetal.h"
11
12 namespace flutter {
13
14 class IOSExternalTextureMetal final : public Texture {
15 public:
16 explicit IOSExternalTextureMetal(
17 FlutterDarwinExternalTextureMetal* darwin_external_texture_metal);
18
19 // |Texture|
20 ~IOSExternalTextureMetal();
21
22 private:
23 FlutterDarwinExternalTextureMetal* darwin_external_texture_metal_;
24
25 // |Texture|
26 void Paint(PaintContext& context,
27 const DlRect& bounds,
28 bool freeze,
29 const DlImageSampling sampling) override;
30
31 // |Texture|
32 void OnGrContextCreated() override;
33
34 // |Texture|
35 void OnGrContextDestroyed() override;
36
37 // |Texture|
38 void MarkNewFrameAvailable() override;
39
40 // |Texture|
41 void OnTextureUnregistered() override;
42
43 FML_DISALLOW_COPY_AND_ASSIGN(IOSExternalTextureMetal);
44 };
45
46 } // namespace flutter
47
48 #endif // FLUTTER_SHELL_PLATFORM_DARWIN_IOS_IOS_EXTERNAL_TEXTURE_METAL_H_
flutter::IOSExternalTextureMetal
Definition: ios_external_texture_metal.h:14
flutter::IOSExternalTextureMetal::IOSExternalTextureMetal
IOSExternalTextureMetal(FlutterDarwinExternalTextureMetal *darwin_external_texture_metal)
Definition: ios_external_texture_metal.mm:12
flutter::IOSExternalTextureMetal::~IOSExternalTextureMetal
~IOSExternalTextureMetal()
flutter
Definition: accessibility_bridge.h:26