diff options
author | 2016-04-15 04:37:07 -0700 | |
---|---|---|
committer | 2016-04-15 04:37:07 -0700 | |
commit | a53011ef44705a091a8e24f7ea289a3f9ad759f2 (patch) | |
tree | b3cca836becb797f55d0caacb3f4cca0bf4e910e /include | |
parent | 834d9e109298ae704043128005f8c1bc622350f4 (diff) |
Update DisplacementMapEffect to sk_sp
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1877783003
Review URL: https://codereview.chromium.org/1877783003
Diffstat (limited to 'include')
-rw-r--r-- | include/effects/SkDisplacementMapEffect.h | 28 |
1 files changed, 21 insertions, 7 deletions
diff --git a/include/effects/SkDisplacementMapEffect.h b/include/effects/SkDisplacementMapEffect.h index 4b6f321a22..f93f2c4454 100644 --- a/include/effects/SkDisplacementMapEffect.h +++ b/include/effects/SkDisplacementMapEffect.h @@ -20,13 +20,14 @@ public: kA_ChannelSelectorType }; - ~SkDisplacementMapEffect(); + ~SkDisplacementMapEffect() override; - static SkImageFilter* Create(ChannelSelectorType xChannelSelector, - ChannelSelectorType yChannelSelector, - SkScalar scale, SkImageFilter* displacement, - SkImageFilter* color = NULL, - const CropRect* cropRect = NULL); + static sk_sp<SkImageFilter> Make(ChannelSelectorType xChannelSelector, + ChannelSelectorType yChannelSelector, + SkScalar scale, + sk_sp<SkImageFilter> displacement, + sk_sp<SkImageFilter> color, + const CropRect* cropRect = nullptr); SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkDisplacementMapEffect) @@ -38,13 +39,26 @@ public: SK_TO_STRING_OVERRIDE() +#ifdef SK_SUPPORT_LEGACY_IMAGEFILTER_PTR + static SkImageFilter* Create(ChannelSelectorType xChannelSelector, + ChannelSelectorType yChannelSelector, + SkScalar scale, SkImageFilter* displacement, + SkImageFilter* color = nullptr, + const CropRect* cropRect = nullptr) { + return Make(xChannelSelector, yChannelSelector, scale, + sk_ref_sp<SkImageFilter>(displacement), + sk_ref_sp<SkImageFilter>(color), + cropRect).release(); + } +#endif + protected: sk_sp<SkSpecialImage> onFilterImage(SkSpecialImage* source, const Context&, SkIPoint* offset) const override; SkDisplacementMapEffect(ChannelSelectorType xChannelSelector, ChannelSelectorType yChannelSelector, - SkScalar scale, SkImageFilter* inputs[2], + SkScalar scale, sk_sp<SkImageFilter> inputs[2], const CropRect* cropRect); void flatten(SkWriteBuffer&) const override; |