12 const Point& start_point,
13 const Point& end_point,
14 const std::vector<flutter::DlColor>& colors,
15 const std::vector<Scalar>& stops,
17 const Matrix& transformation) {
29 return Create<ColorSource>(std::move(dl_filter));
35 const std::vector<flutter::DlColor>& colors,
36 const std::vector<Scalar>& stops,
38 const Matrix& transformation) {
50 return Create<ColorSource>(std::move(dl_filter));
54 const Point& start_center,
56 const Point& end_center,
58 const std::vector<flutter::DlColor>& colors,
59 const std::vector<Scalar>& stops,
61 const Matrix& transformation) {
75 return Create<ColorSource>(std::move(dl_filter));
82 const std::vector<flutter::DlColor>& colors,
83 const std::vector<Scalar>& stops,
85 const Matrix& transformation) {
98 return Create<ColorSource>(std::move(dl_filter));
106 const Matrix& transformation) {
108 horizontal_tile_mode,
113 return Create<ColorSource>(std::move(dl_filter));
119 std::vector<std::shared_ptr<flutter::DlColorSource>> samplers,
120 std::shared_ptr<std::vector<uint8_t>> uniform_data) {
123 if (!runtime_stage) {
127 auto runtime_effect =
129 if (!runtime_effect) {
137 std::move(uniform_data)
140 VALIDATION_LOG <<
"Could not create runtime effect color source.";
143 return Create<ColorSource>(std::move(dl_filter));
147 : color_source_(
std::move(source)) {}
152 return !!color_source_;
157 return color_source_;
static std::shared_ptr< DlColorSource > MakeSweep(DlPoint center, DlScalar start, DlScalar end, uint32_t stop_count, const DlColor *colors, const float *stops, DlTileMode tile_mode, const DlMatrix *matrix=nullptr)
static std::shared_ptr< DlColorSource > MakeImage(const sk_sp< const DlImage > &image, DlTileMode horizontal_tile_mode, DlTileMode vertical_tile_mode, DlImageSampling sampling=DlImageSampling::kLinear, const DlMatrix *matrix=nullptr)
static std::shared_ptr< DlColorSource > MakeLinear(const DlPoint start_point, const DlPoint end_point, uint32_t stop_count, const DlColor *colors, const float *stops, DlTileMode tile_mode, const DlMatrix *matrix=nullptr)
static std::shared_ptr< DlColorSource > MakeRuntimeEffect(sk_sp< DlRuntimeEffect > runtime_effect, std::vector< std::shared_ptr< DlColorSource > > samplers, std::shared_ptr< std::vector< uint8_t > > uniform_data)
static std::shared_ptr< DlColorSource > MakeConical(DlPoint start_center, DlScalar start_radius, DlPoint end_center, DlScalar end_radius, uint32_t stop_count, const DlColor *colors, const float *stops, DlTileMode tile_mode, const DlMatrix *matrix=nullptr)
static std::shared_ptr< DlColorSource > MakeRadial(DlPoint center, DlScalar radius, uint32_t stop_count, const DlColor *colors, const float *stops, DlTileMode tile_mode, const DlMatrix *matrix=nullptr)
static sk_sp< DlRuntimeEffect > Make(std::shared_ptr< impeller::RuntimeStage > runtime_stage)
static ScopedObject< ColorSource > MakeSweepGradient(const Point ¢er, Scalar start, Scalar end, const std::vector< flutter::DlColor > &colors, const std::vector< Scalar > &stops, flutter::DlTileMode tile_mode, const Matrix &transformation)
const std::shared_ptr< flutter::DlColorSource > & GetColorSource() const
static ScopedObject< ColorSource > MakeFragmentProgram(const Context &context, const FragmentProgram &program, std::vector< std::shared_ptr< flutter::DlColorSource > > samplers, std::shared_ptr< std::vector< uint8_t > > uniform_data)
ColorSource(std::shared_ptr< flutter::DlColorSource > source)
static ScopedObject< ColorSource > MakeImage(const Texture &image, flutter::DlTileMode horizontal_tile_mode, flutter::DlTileMode vertical_tile_mode, flutter::DlImageSampling sampling, const Matrix &transformation)
static ScopedObject< ColorSource > MakeRadialGradient(const Point ¢er, Scalar radius, const std::vector< flutter::DlColor > &colors, const std::vector< Scalar > &stops, flutter::DlTileMode tile_mode, const Matrix &transformation)
static ScopedObject< ColorSource > MakeLinearGradient(const Point &start_point, const Point &end_point, const std::vector< flutter::DlColor > &colors, const std::vector< Scalar > &stops, flutter::DlTileMode tile_mode, const Matrix &transformation)
static ScopedObject< ColorSource > MakeConicalGradient(const Point &start_center, Scalar start_radius, const Point &end_center, Scalar end_radius, const std::vector< flutter::DlColor > &colors, const std::vector< Scalar > &stops, flutter::DlTileMode tile_mode, const Matrix &transformation)
std::shared_ptr< impeller::Context > GetContext() const
std::shared_ptr< RuntimeStage > FindRuntimeStage(RuntimeStageBackend backend) const
FlutterVulkanImage * image
A 4x4 matrix using column-major storage.