20#if defined(SK_GRAPHITE)
33 return "image_filter_dag";
42 for (
int i = 0;
i < kNumInputs; ++
i) {
55 for (
int j = 0; j < loops; j++) {
61 static const int kNumInputs = 5;
72 return "image_make_with_filter_dag";
87 for (
int i = 0;
i < kNumInputs; ++
i) {
93 for (
int j = 0; j < loops; j++) {
99 subset, subset, &discardSubset, &
offset);
102#if defined(SK_GRAPHITE)
103 if (
auto recorder = canvas->
recorder()) {
105 subset, subset, &discardSubset, &
offset);
110 subset, subset, &discardSubset, &
offset);
116 static const int kNumInputs = 5;
130 return "image_filter_displaced_blur";
145 for (
int j = 0; j < loops; j++) {
160 const char*
onGetName()
override {
return "image_filter_xfermode_in"; }
171 paint.setImageFilter(xfermode);
174 for (
int j = 0; j < loops; j++) {
const char * onGetName() override
void onDraw(int loops, SkCanvas *canvas) override
ImageFilterDisplacedBlur()
const char * onGetName() override
void onDraw(int loops, SkCanvas *canvas) override
void onDraw(int loops, SkCanvas *canvas) override
const char * onGetName() override
void onDelayedSetup() override
ImageMakeWithFilterDAGBench()
const char * onGetName() override
void onDraw(int loops, SkCanvas *canvas) override
void drawRect(const SkRect &rect, const SkPaint &paint)
virtual GrRecordingContext * recordingContext() const
virtual skgpu::graphite::Recorder * recorder() const
static sk_sp< SkImageFilter > Merge(sk_sp< SkImageFilter > *const filters, int count, const CropRect &cropRect={})
static sk_sp< SkImageFilter > Blur(SkScalar sigmaX, SkScalar sigmaY, SkTileMode tileMode, sk_sp< SkImageFilter > input, const CropRect &cropRect={})
static sk_sp< SkImageFilter > DisplacementMap(SkColorChannel xChannelSelector, SkColorChannel yChannelSelector, SkScalar scale, sk_sp< SkImageFilter > displacement, sk_sp< SkImageFilter > color, const CropRect &cropRect={})
static sk_sp< SkImageFilter > Blend(SkBlendMode mode, sk_sp< SkImageFilter > background, sk_sp< SkImageFilter > foreground=nullptr, const CropRect &cropRect={})
static sk_sp< SkImageFilter > Offset(SkScalar dx, SkScalar dy, sk_sp< SkImageFilter > input, const CropRect &cropRect={})
SkISize dimensions() const
SK_API sk_sp< SkImage > MakeWithFilter(sk_sp< SkImage > src, const SkImageFilter *filter, const SkIRect &subset, const SkIRect &clipBounds, SkIRect *outSubset, SkIPoint *offset)
sk_sp< const SkImage > image
sk_sp< SkBlender > blender SkRect rect
static constexpr SkIPoint Make(int32_t x, int32_t y)
static constexpr SkIRect MakeSize(const SkISize &size)
static constexpr SkIRect MakeWH(int32_t w, int32_t h)
static SkRect Make(const SkISize &size)
static constexpr SkRect MakeWH(float w, float h)