| 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/aiks/picture.h"
9 #include "flutter/impeller/golden_tests/metal_screenshot.h"
10 #include "flutter/impeller/golden_tests/screenshotter.h"
11 #include "flutter/impeller/playground/playground_impl.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(bool enable_wide_gamut);
21
22 std::unique_ptr<Screenshot> MakeScreenshot(
23 AiksContext& aiks_context,
24 const Picture& picture,
25 const ISize& size = {300, 300},
26 bool scale_content = true) override;
27
28 PlaygroundImpl& GetPlayground() override { return *playground_; }
29
30 private:
31 std::unique_ptr<PlaygroundImpl> playground_;
32 };
33
34 } // namespace testing
35 } // namespace impeller
36
37 #endif // FLUTTER_IMPELLER_GOLDEN_TESTS_METAL_SCREENSHOTTER_H_
impeller::AiksContext
Definition: aiks_context.h:19
impeller::testing::Screenshotter
Definition: screenshotter.h:17
impeller::testing::MetalScreenshotter::MetalScreenshotter
MetalScreenshotter(bool enable_wide_gamut)
Definition: metal_screenshotter.mm:16
picture.h
impeller::testing::MetalScreenshotter::MakeScreenshot
std::unique_ptr< Screenshot > MakeScreenshot(AiksContext &aiks_context, const Picture &picture, const ISize &size={300, 300}, bool scale_content=true) override
Definition: metal_screenshotter.mm:23
impeller::PlaygroundImpl
Definition: playground_impl.h:17
screenshotter.h
impeller::Picture
Definition: picture.h:17
impeller::TSize
Definition: size.h:19
metal_screenshot.h
impeller::testing::MetalScreenshotter::GetPlayground
PlaygroundImpl & GetPlayground() override
Definition: metal_screenshotter.h:28
impeller::testing::MetalScreenshotter
Definition: metal_screenshotter.h:18
playground_impl.h
impeller
Definition: aiks_blend_unittests.cc:18