| Flutter Impeller |

aiks_playground.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_IMPELLER_AIKS_AIKS_PLAYGROUND_H_
6 #define FLUTTER_IMPELLER_AIKS_AIKS_PLAYGROUND_H_
7
8 #include "flutter/display_list/display_list.h"
9 #include "impeller/aiks/aiks_context.h"
10 #include "impeller/aiks/picture.h"
11 #include "impeller/playground/playground_test.h"
12 #include "impeller/typographer/typographer_context.h"
13 #include "third_party/imgui/imgui.h"
14
15 namespace impeller {
16
17 class AiksPlayground : public PlaygroundTest {
18 public:
19 using AiksPlaygroundCallback =
20 std::function<std::optional<Picture>(AiksContext& renderer)>;
21
22 using AiksDlPlaygroundCallback = std::function<sk_sp<flutter::DisplayList>()>;
23
24 AiksPlayground();
25
26 ~AiksPlayground();
27
28 void TearDown() override;
29
30 void SetTypographerContext(
31 std::shared_ptr<TypographerContext> typographer_context);
32
33 bool OpenPlaygroundHere(Picture picture);
34
35 bool OpenPlaygroundHere(AiksPlaygroundCallback callback);
36
37 bool OpenPlaygroundHere(const AiksDlPlaygroundCallback& callback);
38
39 bool OpenPlaygroundHere(const sk_sp<flutter::DisplayList>& list);
40
41 static bool ImGuiBegin(const char* name,
42 bool* p_open,
43 ImGuiWindowFlags flags);
44
45 private:
46 std::shared_ptr<TypographerContext> typographer_context_;
47
48 AiksPlayground(const AiksPlayground&) = delete;
49
50 AiksPlayground& operator=(const AiksPlayground&) = delete;
51 };
52
53 } // namespace impeller
54
55 #endif // FLUTTER_IMPELLER_AIKS_AIKS_PLAYGROUND_H_
impeller::AiksPlayground
Definition: aiks_playground.h:17
impeller::AiksContext
Definition: aiks_context.h:19
aiks_context.h
typographer_context.h
impeller::AiksPlayground::AiksPlayground
AiksPlayground()
Definition: aiks_playground.cc:17
picture.h
impeller::AiksPlayground::SetTypographerContext
void SetTypographerContext(std::shared_ptr< TypographerContext > typographer_context)
Definition: aiks_playground.cc:22
impeller::AiksPlayground::TearDown
void TearDown() override
Definition: aiks_playground.cc:27
impeller::Picture
Definition: picture.h:17
impeller::AiksPlayground::AiksPlaygroundCallback
std::function< std::optional< Picture >(AiksContext &renderer)> AiksPlaygroundCallback
Definition: aiks_playground.h:20
impeller::AiksPlayground::OpenPlaygroundHere
bool OpenPlaygroundHere(Picture picture)
Definition: aiks_playground.cc:31
impeller::AiksPlayground::AiksDlPlaygroundCallback
std::function< sk_sp< flutter::DisplayList >()> AiksDlPlaygroundCallback
Definition: aiks_playground.h:22
impeller::AiksPlayground::ImGuiBegin
static bool ImGuiBegin(const char *name, bool *p_open, ImGuiWindowFlags flags)
Definition: aiks_playground.cc:69
impeller::PlaygroundTest
Definition: playground_test.h:21
impeller::AiksPlayground::~AiksPlayground
~AiksPlayground()
impeller
Definition: aiks_blend_unittests.cc:18
playground_test.h