| Flutter Impeller |

playground_impl_vk.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 #pragma once
6
7 #include "flutter/fml/macros.h"
8 #include "impeller/playground/playground_impl.h"
9 #include "impeller/renderer/backend/vulkan/vk.h"
10
11 namespace impeller {
12
13 class PlaygroundImplVK final : public PlaygroundImpl {
14 public:
15 explicit PlaygroundImplVK(PlaygroundSwitches switches);
16
17 ~PlaygroundImplVK();
18
19 private:
20 std::shared_ptr<Context> context_;
21
22 // Windows management.
23 static void DestroyWindowHandle(WindowHandle handle);
24 using UniqueHandle = std::unique_ptr<void, decltype(&DestroyWindowHandle)>;
25 UniqueHandle handle_;
26
27 // |PlaygroundImpl|
28 std::shared_ptr<Context> GetContext() const override;
29
30 // |PlaygroundImpl|
31 WindowHandle GetWindowHandle() const override;
32
33 // |PlaygroundImpl|
34 std::unique_ptr<Surface> AcquireSurfaceFrame(
35 std::shared_ptr<Context> context) override;
36
37 FML_DISALLOW_COPY_AND_ASSIGN(PlaygroundImplVK);
38 };
39
40 } // namespace impeller
impeller::PlaygroundImpl
Definition: playground_impl.h:17
vk.h
impeller::PlaygroundImplVK
Definition: playground_impl_vk.h:13
impeller::PlaygroundImplVK::PlaygroundImplVK
PlaygroundImplVK(PlaygroundSwitches switches)
Definition: playground_impl_vk.cc:55
impeller::PlaygroundSwitches
Definition: switches.h:15
impeller::PlaygroundImplVK::~PlaygroundImplVK
~PlaygroundImplVK()
playground_impl.h
impeller
Definition: aiks_context.cc:10
impeller::PlaygroundImpl::WindowHandle
void * WindowHandle
Definition: playground_impl.h:24