diff options
author | robertphillips <robertphillips@google.com> | 2016-04-15 04:37:07 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-04-15 04:37:07 -0700 |
commit | a53011ef44705a091a8e24f7ea289a3f9ad759f2 (patch) | |
tree | b3cca836becb797f55d0caacb3f4cca0bf4e910e /src | |
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 'src')
-rw-r--r-- | src/effects/SkDisplacementMapEffect.cpp | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/src/effects/SkDisplacementMapEffect.cpp b/src/effects/SkDisplacementMapEffect.cpp index aee15ef753..b715f6a4f3 100644 --- a/src/effects/SkDisplacementMapEffect.cpp +++ b/src/effects/SkDisplacementMapEffect.cpp @@ -163,27 +163,29 @@ bool channel_selector_type_is_valid(SkDisplacementMapEffect::ChannelSelectorType /////////////////////////////////////////////////////////////////////////////// -SkImageFilter* SkDisplacementMapEffect::Create(ChannelSelectorType xChannelSelector, - ChannelSelectorType yChannelSelector, - SkScalar scale, - SkImageFilter* displacement, - SkImageFilter* color, - const CropRect* cropRect) { +sk_sp<SkImageFilter> SkDisplacementMapEffect::Make(ChannelSelectorType xChannelSelector, + ChannelSelectorType yChannelSelector, + SkScalar scale, + sk_sp<SkImageFilter> displacement, + sk_sp<SkImageFilter> color, + const CropRect* cropRect) { if (!channel_selector_type_is_valid(xChannelSelector) || !channel_selector_type_is_valid(yChannelSelector)) { return nullptr; } - SkImageFilter* inputs[2] = { displacement, color }; - return new SkDisplacementMapEffect(xChannelSelector, yChannelSelector, scale, inputs, cropRect); + sk_sp<SkImageFilter> inputs[2] = { std::move(displacement), std::move(color) }; + return sk_sp<SkImageFilter>(new SkDisplacementMapEffect(xChannelSelector, + yChannelSelector, + scale, inputs, cropRect)); } SkDisplacementMapEffect::SkDisplacementMapEffect(ChannelSelectorType xChannelSelector, ChannelSelectorType yChannelSelector, SkScalar scale, - SkImageFilter* inputs[2], + sk_sp<SkImageFilter> inputs[2], const CropRect* cropRect) - : INHERITED(2, inputs, cropRect) + : INHERITED(inputs, 2, cropRect) , fXChannelSelector(xChannelSelector) , fYChannelSelector(yChannelSelector) , fScale(scale) { @@ -197,8 +199,9 @@ sk_sp<SkFlattenable> SkDisplacementMapEffect::CreateProc(SkReadBuffer& buffer) { ChannelSelectorType xsel = (ChannelSelectorType)buffer.readInt(); ChannelSelectorType ysel = (ChannelSelectorType)buffer.readInt(); SkScalar scale = buffer.readScalar(); - return sk_sp<SkFlattenable>(Create(xsel, ysel, scale, common.getInput(0).get(), - common.getInput(1).get(), &common.cropRect())); + return Make(xsel, ysel, scale, + common.getInput(0), common.getInput(1), + &common.cropRect()); } void SkDisplacementMapEffect::flatten(SkWriteBuffer& buffer) const { |