Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
local_matrix_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#ifndef FLUTTER_IMPELLER_ENTITY_CONTENTS_FILTERS_LOCAL_MATRIX_FILTER_CONTENTS_H_
6#define FLUTTER_IMPELLER_ENTITY_CONTENTS_FILTERS_LOCAL_MATRIX_FILTER_CONTENTS_H_
7
10
11namespace impeller {
12
14 public:
16
18
19 void SetMatrix(Matrix matrix);
20
21 // |FilterContents|
22 Matrix GetLocalTransform(const Matrix& parent_transform) const override;
23
24 // |FilterContents|
25 std::optional<Rect> GetFilterSourceCoverage(
26 const Matrix& effect_transform,
27 const Rect& output_limit) const override;
28
29 private:
30 // |FilterContents|
31 std::optional<Entity> RenderFilter(
32 const FilterInput::Vector& input_textures,
33 const ContentContext& renderer,
34 const Entity& entity,
35 const Matrix& effect_transform,
36 const Rect& coverage,
37 const std::optional<Rect>& coverage_hint) const override;
38
39 Matrix matrix_;
40
42
44 delete;
45};
46
47} // namespace impeller
48
49#endif // FLUTTER_IMPELLER_ENTITY_CONTENTS_FILTERS_LOCAL_MATRIX_FILTER_CONTENTS_H_
std::vector< FilterInput::Ref > Vector
std::optional< Rect > GetFilterSourceCoverage(const Matrix &effect_transform, const Rect &output_limit) const override
Internal utility method for |GetSourceCoverage| that computes the inverse effect of this transform on...
Matrix GetLocalTransform(const Matrix &parent_transform) const override
std::optional< Entity > RenderFilter(const FilterInput::Vector &input_textures, const ContentContext &renderer, const Entity &entity, const Matrix &effect_transform, const Rect &coverage, const std::optional< Rect > &coverage_hint) const override
Converts zero or more filter inputs into a render instruction.
A 4x4 matrix using column-major storage.
Definition matrix.h:37