00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef SkDrawFilter_DEFINED
00018 #define SkDrawFilter_DEFINED
00019
00020 #include "SkRefCnt.h"
00021
00023
00024 class SkCanvas;
00025 class SkPaint;
00026
00034 class SkDrawFilter : public SkRefCnt {
00035 public:
00036 enum Type {
00037 kPaint_Type,
00038 kPoint_Type,
00039 kLine_Type,
00040 kBitmap_Type,
00041 kRect_Type,
00042 kPath_Type,
00043 kText_Type
00044 };
00045
00049 virtual bool filter(SkCanvas*, SkPaint*, Type) = 0;
00053 virtual void restore(SkCanvas*, SkPaint*, Type) = 0;
00054 };
00055
00056 #endif