8 #ifndef SkDropShadowImageFilter_DEFINED
9 #define SkDropShadowImageFilter_DEFINED
12 #include "SkImageFilter.h"
18 kDrawShadowAndForeground_ShadowMode,
19 kDrawShadowOnly_ShadowMode,
21 kLast_ShadowMode = kDrawShadowOnly_ShadowMode
24 static const int kShadowModeCount = kLast_ShadowMode+1;
27 SkColor color, ShadowMode shadowMode,
32 SK_TO_STRING_OVERRIDE()
35 #ifdef SK_SUPPORT_LEGACY_IMAGEFILTER_PTR
36 static SkImageFilter* Create(SkScalar dx, SkScalar dy, SkScalar sigmaX, SkScalar sigmaY,
37 SkColor color, ShadowMode shadowMode,
39 const CropRect* cropRect =
nullptr) {
40 return Make(dx, dy, sigmaX, sigmaY, color, shadowMode,
41 sk_ref_sp<SkImageFilter>(input), cropRect).
release();
56 SkScalar fDx, fDy, fSigmaX, fSigmaY;
58 ShadowMode fShadowMode;
T *SK_WARN_UNUSED_RESULT release()
Return the bare pointer, and set the internal object pointer to nullptr.
Definition: SkRefCnt.h:363
Definition: SkDropShadowImageFilter.h:15
Definition: SkImageFilter.h:55
void flatten(SkWriteBuffer &) const override
Override this if your subclass needs to record data that it will need to recreate itself from its Cre...
The SkMatrix class holds a 3x3 matrix for transforming coordinates.
Definition: SkMatrix.h:26
virtual sk_sp< SkSpecialImage > onFilterImage(SkSpecialImage *src, const Context &, SkIPoint *offset) const =0
This is the virtual which should be overridden by the derived class to perform image filtering...
Definition: SkRefCnt.h:135
Base class for image filters.
Definition: SkImageFilter.h:35
uint32_t SkColor
32 bit ARGB color value, not premultiplied.
Definition: SkColor.h:28
Definition: SkWriteBuffer.h:26
virtual SkIRect onFilterNodeBounds(const SkIRect &, const SkMatrix &, MapDirection) const
Performs a forwards or reverse mapping of the given rect to accommodate this filter's margin requirem...
Definition: SkImageFilter.h:37
SkIRect holds four 32 bit integer coordinates for a rectangle.
Definition: SkRect.h:20
SkIPoint holds two 32 bit integer coordinates.
Definition: SkPoint.h:40
Types and macros for colors.