Flutter Engine
The Flutter Engine
color_source_contents.cc
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
6
9
10namespace impeller {
11
13
15
16void ColorSourceContents::SetGeometry(std::shared_ptr<Geometry> geometry) {
17 geometry_ = std::move(geometry);
18}
19
20const std::shared_ptr<Geometry>& ColorSourceContents::GetGeometry() const {
21 return geometry_;
22}
23
25 opacity_ = alpha;
26}
27
29 return opacity_ * inherited_opacity_;
30}
31
33 inverse_matrix_ = matrix.Invert();
34}
35
37 return inverse_matrix_;
38}
39
41 return false;
42}
43
45 const Entity& entity) const {
46 return geometry_->GetCoverage(entity.GetTransform());
47};
48
50 return true;
51}
52
54 inherited_opacity_ = opacity;
55}
56
57} // namespace impeller
void SetInheritedOpacity(Scalar opacity) override
Inherit the provided opacity.
Scalar GetOpacityFactor() const
Get the opacity factor for this color source.
std::optional< Rect > GetCoverage(const Entity &entity) const override
Get the area of the render pass that will be affected when this contents is rendered.
void SetEffectTransform(Matrix matrix)
Set the effect transform for this color source.
bool CanInheritOpacity(const Entity &entity) const override
Whether or not this contents can accept the opacity peephole optimization.
const Matrix & GetInverseEffectTransform() const
Set the inverted effect transform for this color source.
void SetOpacityFactor(Scalar opacity)
Set the opacity factor for this color source.
void SetGeometry(std::shared_ptr< Geometry > geometry)
Set the geometry that this contents will use to render.
const std::shared_ptr< Geometry > & GetGeometry() const
Get the geometry that this contents will use to render.
const Matrix & GetTransform() const
Get the global transform matrix for this Entity.
Definition: entity.cc:46
unsigned useCenter Optional< SkMatrix > matrix
Definition: SkRecords.h:258
float Scalar
Definition: scalar.h:18
A 4x4 matrix using column-major storage.
Definition: matrix.h:37