diff options
author | reed <reed@google.com> | 2015-10-06 11:12:23 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-10-06 11:12:23 -0700 |
commit | 80a6dcaa1b757826ed7414f64b035d512d9ccbf8 (patch) | |
tree | b77fa8cf50e6954995bf8e53cf0bf07ba72e6544 /include/effects/SkOffsetImageFilter.h | |
parent | 85f0d5d6e6a8ae2d5bdfb784fdf426a89dad2c0e (diff) |
factories should return baseclass, allowing the impl to specialize
waiting on https://codereview.chromium.org/1386163002/# to land
BUG=skia:4424
Review URL: https://codereview.chromium.org/1390523005
Diffstat (limited to 'include/effects/SkOffsetImageFilter.h')
-rw-r--r-- | include/effects/SkOffsetImageFilter.h | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/include/effects/SkOffsetImageFilter.h b/include/effects/SkOffsetImageFilter.h index 30e380d89b..40f2ce3374 100644 --- a/include/effects/SkOffsetImageFilter.h +++ b/include/effects/SkOffsetImageFilter.h @@ -12,30 +12,32 @@ #include "SkPoint.h" class SK_API SkOffsetImageFilter : public SkImageFilter { - typedef SkImageFilter INHERITED; - public: - static SkOffsetImageFilter* Create(SkScalar dx, SkScalar dy, SkImageFilter* input = NULL, - const CropRect* cropRect = NULL) { + static SkImageFilter* Create(SkScalar dx, SkScalar dy, SkImageFilter* input = NULL, + const CropRect* cropRect = NULL) { if (!SkScalarIsFinite(dx) || !SkScalarIsFinite(dy)) { return NULL; } return new SkOffsetImageFilter(dx, dy, input, cropRect); } + void computeFastBounds(const SkRect& src, SkRect* dst) const override; + SK_TO_STRING_OVERRIDE() SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkOffsetImageFilter) protected: - SkOffsetImageFilter(SkScalar dx, SkScalar dy, SkImageFilter* input, const CropRect* cropRect); void flatten(SkWriteBuffer&) const override; - - virtual bool onFilterImage(Proxy*, const SkBitmap& src, const Context&, - SkBitmap* result, SkIPoint* loc) const override; + bool onFilterImage(Proxy*, const SkBitmap& src, const Context&, SkBitmap* result, + SkIPoint* loc) const override; bool onFilterBounds(const SkIRect&, const SkMatrix&, SkIRect*) const override; private: + SkOffsetImageFilter(SkScalar dx, SkScalar dy, SkImageFilter* input, const CropRect*); + SkVector fOffset; + + typedef SkImageFilter INHERITED; }; #endif |