Flutter Windows Embedder
compositor.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_WINDOWS_COMPOSITOR_H_
6 #define FLUTTER_SHELL_PLATFORM_WINDOWS_COMPOSITOR_H_
7 
8 #include "flutter/shell/platform/embedder/embedder.h"
9 
10 namespace flutter {
11 
12 class FlutterWindowsView;
13 
14 // Enables the Flutter engine to render content on Windows.
15 //
16 // The engine uses this to:
17 //
18 // 1. Create backing stores used for rendering Flutter content
19 // 2. Composite and present Flutter content and platform views onto a view
20 //
21 // Platform views are not yet supported.
22 class Compositor {
23  public:
24  virtual ~Compositor() = default;
25 
26  // Creates a backing store used for rendering Flutter content.
27  //
28  // The backing store's configuration is stored in |backing_store_out|.
29  virtual bool CreateBackingStore(const FlutterBackingStoreConfig& config,
30  FlutterBackingStore* backing_store_out) = 0;
31 
32  // Destroys a backing store and releases its resources.
33  virtual bool CollectBackingStore(const FlutterBackingStore* store) = 0;
34 
35  // Present Flutter content and platform views onto the view.
36  virtual bool Present(FlutterWindowsView* view,
37  const FlutterLayer** layers,
38  size_t layers_count) = 0;
39 };
40 
41 } // namespace flutter
42 
43 #endif // FLUTTER_SHELL_PLATFORM_WINDOWS_COMPOSITOR_H_
flutter::FlutterWindowsView
Definition: flutter_windows_view.h:34
flutter::Compositor::CollectBackingStore
virtual bool CollectBackingStore(const FlutterBackingStore *store)=0
flutter::Compositor::CreateBackingStore
virtual bool CreateBackingStore(const FlutterBackingStoreConfig &config, FlutterBackingStore *backing_store_out)=0
flutter::Compositor::~Compositor
virtual ~Compositor()=default
flutter
Definition: accessibility_bridge_windows.cc:11
flutter::Compositor::Present
virtual bool Present(FlutterWindowsView *view, const FlutterLayer **layers, size_t layers_count)=0
flutter::Compositor
Definition: compositor.h:22