7 #include "flutter/display_list/effects/dl_image_filters.h"
8 #include "flutter/display_list/effects/dl_runtime_effect.h"
14 : filter_(
std::move(filter)) {}
20 flutter::DlTileMode tile_mode) {
21 auto filter = flutter::DlBlurImageFilter::Make(x_sigma, y_sigma, tile_mode);
25 return Create<ImageFilter>(std::move(filter));
30 auto filter = flutter::DlDilateImageFilter::Make(x_radius, y_radius);
34 return Create<ImageFilter>(std::move(filter));
39 auto filter = flutter::DlErodeImageFilter::Make(x_radius, y_radius);
43 return Create<ImageFilter>(std::move(filter));
48 flutter::DlImageSampling sampling) {
49 auto filter = flutter::DlMatrixImageFilter::Make(matrix, sampling);
53 return Create<ImageFilter>(std::move(filter));
59 std::vector<std::shared_ptr<flutter::DlColorSource>> samplers,
60 std::shared_ptr<std::vector<uint8_t>> uniform_data) {
68 flutter::DlRuntimeEffect::MakeImpeller(std::move(runtime_stage));
69 if (!runtime_effect) {
74 flutter::DlRuntimeEffectImageFilter::Make(std::move(runtime_effect),
76 std::move(uniform_data)
82 return Create<ImageFilter>(std::move(filter));
87 auto filter = flutter::DlComposeImageFilter::Make(outer.
GetImageFilter(),
92 return Create<ImageFilter>(std::move(filter));
std::shared_ptr< impeller::Context > GetContext() const
std::shared_ptr< RuntimeStage > FindRuntimeStage(RuntimeStageBackend backend) const
static ScopedObject< ImageFilter > MakeDilate(Scalar x_radius, Scalar y_radius)
ImageFilter(std::shared_ptr< flutter::DlImageFilter > filter)
static ScopedObject< ImageFilter > MakeFragmentProgram(const Context &context, const FragmentProgram &program, std::vector< std::shared_ptr< flutter::DlColorSource >> samplers, std::shared_ptr< std::vector< uint8_t >> uniform_data)
static ScopedObject< ImageFilter > MakeErode(Scalar x_radius, Scalar y_radius)
const std::shared_ptr< flutter::DlImageFilter > & GetImageFilter() const
static ScopedObject< ImageFilter > MakeCompose(const ImageFilter &outer, const ImageFilter &inner)
static ScopedObject< ImageFilter > MakeBlur(Scalar x_sigma, Scalar y_sigma, flutter::DlTileMode tile_mode)
static ScopedObject< ImageFilter > MakeMatrix(const Matrix &matrix, flutter::DlImageSampling sampling)
A 4x4 matrix using column-major storage.