1 | #ifndef FLUTTER_SHELL_GPU_GPU_SURFACE_DELEGATE_H_ |
2 | #define FLUTTER_SHELL_GPU_GPU_SURFACE_DELEGATE_H_ |
3 | |
4 | #include "flutter/flow/embedded_views.h" |
5 | |
6 | namespace flutter { |
7 | |
8 | class GPUSurfaceDelegate { |
9 | public: |
10 | virtual ~GPUSurfaceDelegate() {} |
11 | |
12 | //---------------------------------------------------------------------------- |
13 | /// @brief Gets the view embedder that controls how the Flutter layer |
14 | /// hierarchy split into multiple chunks should be composited back |
15 | /// on-screen. This field is optional and the Flutter rasterizer |
16 | /// will render into a single on-screen surface if this call |
17 | /// returns a null external view embedder. This happens on the GPU |
18 | /// thread. |
19 | /// |
20 | /// @return The external view embedder, or, null if Flutter is rendering |
21 | /// into a single on-screen surface. |
22 | /// |
23 | virtual ExternalViewEmbedder* GetExternalViewEmbedder() = 0; |
24 | }; |
25 | |
26 | } // namespace flutter |
27 | |
28 | #endif // FLUTTER_SHELL_GPU_GPU_SURFACE_DELEGATE_H_ |
29 | |