| Flutter iOS Embedder |

ios_surface_noop.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_SURFACE_NOOP_H_
6 #define FLUTTER_SHELL_PLATFORM_DARWIN_IOS_IOS_SURFACE_NOOP_H_
7
8 #import "flutter/shell/platform/darwin/ios/ios_context.h"
9 #import "flutter/shell/platform/darwin/ios/ios_surface.h"
10
11 #include "third_party/skia/include/core/SkSurface.h"
12
13 @class CALayer;
14
15 namespace flutter {
16
17 /// @brief A rendering surface that accepts rendering intent but does not render
18 /// anything.
19 ///
20 /// This is useful for running on platforms that need an engine instance and
21 /// don't have the required drivers.
22 class IOSSurfaceNoop final : public IOSSurface {
23 public:
24 explicit IOSSurfaceNoop(std::shared_ptr<IOSContext> context);
25
26 ~IOSSurfaceNoop() override;
27
28 // |IOSSurface|
29 bool IsValid() const override;
30
31 // |IOSSurface|
32 void UpdateStorageSizeIfNecessary() override;
33
34 // |IOSSurface|
35 std::unique_ptr<Surface> CreateGPUSurface(GrDirectContext* gr_context = nullptr) override;
36
37 private:
38 IOSSurfaceNoop(const IOSSurfaceNoop&) = delete;
39
40 IOSSurfaceNoop& operator=(const IOSSurfaceNoop&) = delete;
41 };
42
43 } // namespace flutter
44
45 #endif // FLUTTER_SHELL_PLATFORM_DARWIN_IOS_IOS_SURFACE_NOOP_H_
flutter::IOSSurfaceNoop::IsValid
bool IsValid() const override
Definition: ios_surface_noop.mm:28
flutter::IOSSurfaceNoop::IOSSurfaceNoop
IOSSurfaceNoop(std::shared_ptr< IOSContext > context)
Definition: ios_surface_noop.mm:23
flutter::IOSSurfaceNoop::CreateGPUSurface
std::unique_ptr< Surface > CreateGPUSurface(GrDirectContext *gr_context=nullptr) override
Definition: ios_surface_noop.mm:34
flutter::IOSSurface
Definition: ios_surface.h:20
ios_surface.h
flutter::IOSSurfaceNoop::~IOSSurfaceNoop
~IOSSurfaceNoop() override
flutter
Definition: accessibility_bridge.h:27
flutter::IOSSurfaceNoop::UpdateStorageSizeIfNecessary
void UpdateStorageSizeIfNecessary() override
Definition: ios_surface_noop.mm:32
flutter::IOSSurfaceNoop
A rendering surface that accepts rendering intent but does not render anything.
Definition: ios_surface_noop.h:22
ios_context.h