OLD | NEW |
1 #ifndef _SkTestImageFilters_h | 1 #ifndef _SkTestImageFilters_h |
2 #define _SkTestImageFilters_h | 2 #define _SkTestImageFilters_h |
3 | 3 |
4 #include "SkImageFilter.h" | 4 #include "SkImageFilter.h" |
5 #include "SkPoint.h" | 5 #include "SkPoint.h" |
6 | 6 |
7 // Fun mode that scales down (only) and then scales back up to look pixelated | 7 // Fun mode that scales down (only) and then scales back up to look pixelated |
8 class SK_API SkDownSampleImageFilter : public SkImageFilter { | 8 class SK_API SkDownSampleImageFilter : public SkImageFilter { |
9 public: | 9 public: |
10 static SkDownSampleImageFilter* Create(SkScalar scale, SkImageFilter* input
= NULL) { | 10 static SkDownSampleImageFilter* Create(SkScalar scale, SkImageFilter* input
= NULL) { |
11 if (!SkScalarIsFinite(scale)) { | 11 if (!SkScalarIsFinite(scale)) { |
12 return NULL; | 12 return NULL; |
13 } | 13 } |
14 // we don't support scale in this range | 14 // we don't support scale in this range |
15 if (scale > SK_Scalar1 || scale <= 0) { | 15 if (scale > SK_Scalar1 || scale <= 0) { |
16 return NULL; | 16 return NULL; |
17 } | 17 } |
18 return SkNEW_ARGS(SkDownSampleImageFilter, (scale, input)); | 18 return SkNEW_ARGS(SkDownSampleImageFilter, (scale, input)); |
19 } | 19 } |
20 | 20 |
| 21 SK_TO_STRING_OVERRIDE() |
21 SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkDownSampleImageFilter) | 22 SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkDownSampleImageFilter) |
22 | 23 |
23 protected: | 24 protected: |
24 SkDownSampleImageFilter(SkScalar scale, SkImageFilter* input) | 25 SkDownSampleImageFilter(SkScalar scale, SkImageFilter* input) |
25 : INHERITED(1, &input), fScale(scale) {} | 26 : INHERITED(1, &input), fScale(scale) {} |
26 virtual void flatten(SkWriteBuffer&) const SK_OVERRIDE; | 27 virtual void flatten(SkWriteBuffer&) const SK_OVERRIDE; |
27 | 28 |
28 virtual bool onFilterImage(Proxy*, const SkBitmap& src, const Context&, | 29 virtual bool onFilterImage(Proxy*, const SkBitmap& src, const Context&, |
29 SkBitmap* result, SkIPoint* loc) const SK_OVERRID
E; | 30 SkBitmap* result, SkIPoint* loc) const SK_OVERRID
E; |
30 | 31 |
31 private: | 32 private: |
32 SkScalar fScale; | 33 SkScalar fScale; |
33 | 34 |
34 typedef SkImageFilter INHERITED; | 35 typedef SkImageFilter INHERITED; |
35 }; | 36 }; |
36 | 37 |
37 #endif | 38 #endif |
OLD | NEW |