• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2012 Google Inc.
3  *
4  * Use of this source code is governed by a BSD-style license that can be
5  * found in the LICENSE file.
6  */
7 
8 #ifndef SkStippleMaskFilter_DEFINED
9 #define SkStippleMaskFilter_DEFINED
10 
11 #include "SkMaskFilter.h"
12 
13 /**
14  * Simple MaskFilter that creates a screen door stipple pattern.
15  */
16 class SK_API SkStippleMaskFilter : public SkMaskFilter {
17 public:
SkStippleMaskFilter()18     SkStippleMaskFilter() : INHERITED() {
19     }
20 
21     virtual bool filterMask(SkMask* dst, const SkMask& src,
22                             const SkMatrix& matrix,
23                             SkIPoint* margin) const SK_OVERRIDE;
24 
25     // getFormat is from SkMaskFilter
getFormat()26     virtual SkMask::Format getFormat() const SK_OVERRIDE {
27         return SkMask::kA8_Format;
28     }
29 
30     SkDEVCODE(virtual void toString(SkString* str) const SK_OVERRIDE;)
31     SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkStippleMaskFilter);
32 
33 protected:
SkStippleMaskFilter(SkFlattenableReadBuffer & buffer)34     SkStippleMaskFilter(SkFlattenableReadBuffer& buffer)
35     : SkMaskFilter(buffer) {
36     }
37 
38 private:
39     typedef SkMaskFilter INHERITED;
40 };
41 
42 #endif // SkStippleMaskFilter_DEFINED
43