| Flutter Impeller |

metal_screenshotter.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_GOLDEN_TESTS_METAL_SCREENSHOTTER_H_
6 #define FLUTTER_IMPELLER_GOLDEN_TESTS_METAL_SCREENSHOTTER_H_
7
8 #include "flutter/impeller/golden_tests/metal_screenshot.h"
9 #include "flutter/impeller/golden_tests/screenshotter.h"
10 #include "flutter/impeller/playground/playground_impl.h"
11 #include "impeller/display_list/aiks_context.h"
12
13 namespace impeller {
14 namespace testing {
15
16 /// Converts `Picture`s and `DisplayList`s to `MetalScreenshot`s with the
17 /// playground backend.
18 class MetalScreenshotter : public Screenshotter {
19 public:
20 explicit MetalScreenshotter(const PlaygroundSwitches& switches);
21
22 std::unique_ptr<Screenshot> MakeScreenshot(
23 AiksContext& aiks_context,
24 const std::shared_ptr<Texture> texture) override;
25
26 PlaygroundImpl& GetPlayground() override { return *playground_; }
27
28 private:
29 std::unique_ptr<PlaygroundImpl> playground_;
30 };
31
32 } // namespace testing
33 } // namespace impeller
34
35 #endif // FLUTTER_IMPELLER_GOLDEN_TESTS_METAL_SCREENSHOTTER_H_
aiks_context.h
impeller::AiksContext
Definition: aiks_context.h:19
impeller::PlaygroundImpl
Definition: playground_impl.h:18
impeller::testing::MetalScreenshotter
Definition: metal_screenshotter.h:18
impeller::testing::MetalScreenshotter::GetPlayground
PlaygroundImpl & GetPlayground() override
Definition: metal_screenshotter.h:26
impeller::testing::MetalScreenshotter::MakeScreenshot
std::unique_ptr< Screenshot > MakeScreenshot(AiksContext &aiks_context, const std::shared_ptr< Texture > texture) override
Definition: metal_screenshotter.mm:21
impeller::testing::MetalScreenshotter::MetalScreenshotter
MetalScreenshotter(const PlaygroundSwitches &switches)
Definition: metal_screenshotter.mm:16
impeller::testing::Screenshotter
Definition: screenshotter.h:17
metal_screenshot.h
impeller
Definition: allocation.cc:12
playground_impl.h
screenshotter.h
impeller::PlaygroundSwitches
Definition: switches.h:16