OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2014 The Android Open Source Project | 2 * Copyright 2014 The Android Open Source Project |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
8 #ifndef SkMatrixImageFilter_DEFINED | 8 #ifndef SkMatrixImageFilter_DEFINED |
9 #define SkMatrixImageFilter_DEFINED | 9 #define SkMatrixImageFilter_DEFINED |
10 | 10 |
(...skipping 12 matching lines...) Expand all Loading... |
23 public: | 23 public: |
24 /** Construct a 2D transformation image filter. | 24 /** Construct a 2D transformation image filter. |
25 * @param transform The matrix to apply when drawing the src bitmap | 25 * @param transform The matrix to apply when drawing the src bitmap |
26 * @param filterLevel The quality of filtering to apply when scaling. | 26 * @param filterLevel The quality of filtering to apply when scaling. |
27 * @param input The input image filter. If NULL, the src bitmap | 27 * @param input The input image filter. If NULL, the src bitmap |
28 * passed to filterImage() is used instead. | 28 * passed to filterImage() is used instead. |
29 */ | 29 */ |
30 | 30 |
31 static SkMatrixImageFilter* Create(const SkMatrix& transform, | 31 static SkMatrixImageFilter* Create(const SkMatrix& transform, |
32 SkFilterQuality, | 32 SkFilterQuality, |
33 SkImageFilter* input = NULL, | 33 SkImageFilter* input = NULL); |
34 uint32_t uniqueID = 0); | |
35 #ifdef SK_SUPPORT_LEGACY_FILTERLEVEL_ENUM | 34 #ifdef SK_SUPPORT_LEGACY_FILTERLEVEL_ENUM |
36 static SkMatrixImageFilter* Create(const SkMatrix& transform, | 35 static SkMatrixImageFilter* Create(const SkMatrix& transform, |
37 SkPaint::FilterLevel level, | 36 SkPaint::FilterLevel level, |
38 SkImageFilter* input = NULL, | 37 SkImageFilter* input = NULL) { |
39 uint32_t uniqueID = 0) { | 38 return Create(transform, SkFilterQuality(level), input); |
40 return Create(transform, SkFilterQuality(level), input, uniqueID); | |
41 } | 39 } |
42 #endif | 40 #endif |
43 virtual ~SkMatrixImageFilter(); | 41 virtual ~SkMatrixImageFilter(); |
44 | 42 |
45 void computeFastBounds(const SkRect&, SkRect*) const SK_OVERRIDE; | 43 void computeFastBounds(const SkRect&, SkRect*) const SK_OVERRIDE; |
46 | 44 |
47 SK_TO_STRING_OVERRIDE() | 45 SK_TO_STRING_OVERRIDE() |
48 SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkMatrixImageFilter) | 46 SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkMatrixImageFilter) |
49 | 47 |
50 protected: | 48 protected: |
51 SkMatrixImageFilter(const SkMatrix& transform, | 49 SkMatrixImageFilter(const SkMatrix& transform, |
52 SkFilterQuality, | 50 SkFilterQuality, |
53 SkImageFilter* input, | 51 SkImageFilter* input); |
54 uint32_t uniqueID); | |
55 void flatten(SkWriteBuffer&) const SK_OVERRIDE; | 52 void flatten(SkWriteBuffer&) const SK_OVERRIDE; |
56 | 53 |
57 virtual bool onFilterImage(Proxy*, const SkBitmap& src, const Context&, | 54 virtual bool onFilterImage(Proxy*, const SkBitmap& src, const Context&, |
58 SkBitmap* result, SkIPoint* loc) const SK_OVERRID
E; | 55 SkBitmap* result, SkIPoint* loc) const SK_OVERRID
E; |
59 virtual bool onFilterBounds(const SkIRect& src, const SkMatrix&, | 56 virtual bool onFilterBounds(const SkIRect& src, const SkMatrix&, |
60 SkIRect* dst) const SK_OVERRIDE; | 57 SkIRect* dst) const SK_OVERRIDE; |
61 | 58 |
62 private: | 59 private: |
63 SkMatrix fTransform; | 60 SkMatrix fTransform; |
64 SkFilterQuality fFilterQuality; | 61 SkFilterQuality fFilterQuality; |
65 typedef SkImageFilter INHERITED; | 62 typedef SkImageFilter INHERITED; |
66 }; | 63 }; |
67 | 64 |
68 #endif | 65 #endif |
OLD | NEW |