protected:
SkMorphologyImageFilter(int radiusX, int radiusY, SkImageFilter* input,
- const CropRect* cropRect);
+ const CropRect* cropRect, uint32_t uniqueID);
bool filterImageGeneric(Proc procX, Proc procY,
Proxy*, const SkBitmap& src, const Context&,
SkBitmap* result, SkIPoint* offset) const;
+#ifdef SK_SUPPORT_LEGACY_DEEPFLATTENING
SkMorphologyImageFilter(SkReadBuffer& buffer);
+#endif
virtual void flatten(SkWriteBuffer&) const SK_OVERRIDE;
#if SK_SUPPORT_GPU
virtual bool canFilterImageGPU() const SK_OVERRIDE { return true; }
public:
static SkDilateImageFilter* Create(int radiusX, int radiusY,
SkImageFilter* input = NULL,
- const CropRect* cropRect = NULL) {
- return SkNEW_ARGS(SkDilateImageFilter, (radiusX, radiusY, input, cropRect));
+ const CropRect* cropRect = NULL,
+ uint32_t uniqueID = 0) {
+ if (radiusX < 0 || radiusY < 0) {
+ return NULL;
+ }
+ return SkNEW_ARGS(SkDilateImageFilter, (radiusX, radiusY, input, cropRect, uniqueID));
}
virtual bool onFilterImage(Proxy*, const SkBitmap& src, const Context&,
SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkDilateImageFilter)
protected:
- SkDilateImageFilter(int radiusX, int radiusY, SkImageFilter* input, const CropRect* cropRect)
- : INHERITED(radiusX, radiusY, input, cropRect) {}
+ SkDilateImageFilter(int radiusX, int radiusY, SkImageFilter* input, const CropRect* cropRect, uint32_t uniqueID)
+ : INHERITED(radiusX, radiusY, input, cropRect, uniqueID) {}
+#ifdef SK_SUPPORT_LEGACY_DEEPFLATTENING
explicit SkDilateImageFilter(SkReadBuffer& buffer) : INHERITED(buffer) {}
+#endif
private:
typedef SkMorphologyImageFilter INHERITED;
public:
static SkErodeImageFilter* Create(int radiusX, int radiusY,
SkImageFilter* input = NULL,
- const CropRect* cropRect = NULL) {
- return SkNEW_ARGS(SkErodeImageFilter, (radiusX, radiusY, input, cropRect));
+ const CropRect* cropRect = NULL,
+ uint32_t uniqueID = 0) {
+ if (radiusX < 0 || radiusY < 0) {
+ return NULL;
+ }
+ return SkNEW_ARGS(SkErodeImageFilter, (radiusX, radiusY, input, cropRect, uniqueID));
}
virtual bool onFilterImage(Proxy*, const SkBitmap& src, const Context&,
SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkErodeImageFilter)
protected:
- SkErodeImageFilter(int radiusX, int radiusY, SkImageFilter* input, const CropRect* cropRect)
- : INHERITED(radiusX, radiusY, input, cropRect) {}
+ SkErodeImageFilter(int radiusX, int radiusY, SkImageFilter* input, const CropRect* cropRect, uint32_t uniqueID)
+ : INHERITED(radiusX, radiusY, input, cropRect, uniqueID) {}
+#ifdef SK_SUPPORT_LEGACY_DEEPFLATTENING
explicit SkErodeImageFilter(SkReadBuffer& buffer) : INHERITED(buffer) {}
+#endif
private:
typedef SkMorphologyImageFilter INHERITED;