| Flutter Impeller |

yuv_to_rgb_filter_contents.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 "impeller/entity/contents/filters/filter_contents.h"
8
9 namespace impeller {
10
11 class YUVToRGBFilterContents final : public FilterContents {
12 public:
13 YUVToRGBFilterContents();
14
15 ~YUVToRGBFilterContents() override;
16
17 void SetYUVColorSpace(YUVColorSpace yuv_color_space);
18
19 private:
20 // |FilterContents|
21 std::optional<Entity> RenderFilter(
22 const FilterInput::Vector& input_textures,
23 const ContentContext& renderer,
24 const Entity& entity,
25 const Matrix& effect_transform,
26 const Rect& coverage,
27 const std::optional<Rect>& coverage_hint) const override;
28
29 YUVColorSpace yuv_color_space_ = YUVColorSpace::kBT601LimitedRange;
30
31 FML_DISALLOW_COPY_AND_ASSIGN(YUVToRGBFilterContents);
32 };
33
34 } // namespace impeller
impeller::YUVToRGBFilterContents
Definition: yuv_to_rgb_filter_contents.h:11
impeller::Entity
Definition: entity.h:21
filter_contents.h
impeller::YUVToRGBFilterContents::~YUVToRGBFilterContents
~YUVToRGBFilterContents() override
impeller::YUVToRGBFilterContents::YUVToRGBFilterContents
YUVToRGBFilterContents()
impeller::YUVColorSpace::kBT601LimitedRange
@ kBT601LimitedRange
impeller::YUVColorSpace
YUVColorSpace
Definition: color.h:53
impeller::FilterInput::Vector
std::vector< FilterInput::Ref > Vector
Definition: filter_input.h:32
impeller::YUVToRGBFilterContents::SetYUVColorSpace
void SetYUVColorSpace(YUVColorSpace yuv_color_space)
Definition: yuv_to_rgb_filter_contents.cc:36
impeller
Definition: aiks_context.cc:10
impeller::ContentContext
Definition: content_context.h:344
impeller::TRect< Scalar >
impeller::Matrix
A 4x4 matrix using column-major storage.
Definition: matrix.h:36
impeller::FilterContents
Definition: filter_contents.h:19