• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef _SkTestImageFilters_h
2 #define _SkTestImageFilters_h
3 
4 #include "SkImageFilter.h"
5 #include "SkPoint.h"
6 
7 // Fun mode that scales down (only) and then scales back up to look pixelated
8 class SK_API SkDownSampleImageFilter : public SkImageFilter {
9 public:
Create(SkScalar scale)10     static SkDownSampleImageFilter* Create(SkScalar scale) {
11         return SkNEW_ARGS(SkDownSampleImageFilter, (scale));
12     }
13 
SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkDownSampleImageFilter)14     SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkDownSampleImageFilter)
15 
16 protected:
17     SkDownSampleImageFilter(SkScalar scale) : INHERITED(0), fScale(scale) {}
18     SkDownSampleImageFilter(SkReadBuffer& buffer);
19     virtual void flatten(SkWriteBuffer&) const SK_OVERRIDE;
20 
21     virtual bool onFilterImage(Proxy*, const SkBitmap& src, const Context&,
22                                SkBitmap* result, SkIPoint* loc) const SK_OVERRIDE;
23 
24 private:
25     SkScalar fScale;
26 
27     typedef SkImageFilter INHERITED;
28 };
29 
30 #endif
31