OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2006 The Android Open Source Project | 3 * Copyright 2006 The Android Open Source Project |
4 * | 4 * |
5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
7 */ | 7 */ |
8 | 8 |
9 | 9 |
10 #ifndef SkMaskFilter_DEFINED | 10 #ifndef SkMaskFilter_DEFINED |
11 #define SkMaskFilter_DEFINED | 11 #define SkMaskFilter_DEFINED |
12 | 12 |
13 #include "SkBlurTypes.h" | 13 #include "SkBlurTypes.h" |
14 #include "SkFlattenable.h" | 14 #include "SkFlattenable.h" |
15 #include "SkMask.h" | 15 #include "SkMask.h" |
16 #include "SkPaint.h" | 16 #include "SkPaint.h" |
17 | 17 |
18 class GrClip; | |
19 class GrContext; | 18 class GrContext; |
20 class GrPaint; | 19 class GrPaint; |
21 class GrRenderTarget; | 20 class GrRenderTarget; |
22 class SkBitmap; | 21 class SkBitmap; |
23 class SkBlitter; | 22 class SkBlitter; |
24 class SkCachedData; | 23 class SkCachedData; |
25 class SkMatrix; | 24 class SkMatrix; |
26 class SkPath; | 25 class SkPath; |
27 class SkRasterClip; | 26 class SkRasterClip; |
28 class SkRRect; | 27 class SkRRect; |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
94 const SkMatrix& ctm, | 93 const SkMatrix& ctm, |
95 SkRect* maskRect) const; | 94 SkRect* maskRect) const; |
96 | 95 |
97 /** | 96 /** |
98 * Try to directly render the mask filter into the target. Returns | 97 * Try to directly render the mask filter into the target. Returns |
99 * true if drawing was successful. | 98 * true if drawing was successful. |
100 */ | 99 */ |
101 virtual bool directFilterMaskGPU(GrContext* context, | 100 virtual bool directFilterMaskGPU(GrContext* context, |
102 GrRenderTarget* rt, | 101 GrRenderTarget* rt, |
103 GrPaint* grp, | 102 GrPaint* grp, |
104 const GrClip&, | |
105 const SkMatrix& viewMatrix, | 103 const SkMatrix& viewMatrix, |
106 const SkStrokeRec& strokeRec, | 104 const SkStrokeRec& strokeRec, |
107 const SkPath& path) const; | 105 const SkPath& path) const; |
108 /** | 106 /** |
109 * Try to directly render a rounded rect mask filter into the target. Retu
rns | 107 * Try to directly render a rounded rect mask filter into the target. Retu
rns |
110 * true if drawing was successful. | 108 * true if drawing was successful. |
111 */ | 109 */ |
112 virtual bool directFilterRRectMaskGPU(GrContext* context, | 110 virtual bool directFilterRRectMaskGPU(GrContext* context, |
113 GrRenderTarget* rt, | 111 GrRenderTarget* rt, |
114 GrPaint* grp, | 112 GrPaint* grp, |
115 const GrClip&, | |
116 const SkMatrix& viewMatrix, | 113 const SkMatrix& viewMatrix, |
117 const SkStrokeRec& strokeRec, | 114 const SkStrokeRec& strokeRec, |
118 const SkRRect& rrect) const; | 115 const SkRRect& rrect) const; |
119 | 116 |
120 /** | 117 /** |
121 * This function is used to implement filters that require an explicit src m
ask. It should only | 118 * This function is used to implement filters that require an explicit src m
ask. It should only |
122 * be called if canFilterMaskGPU returned true and the maskRect param should
be the output from | 119 * be called if canFilterMaskGPU returned true and the maskRect param should
be the output from |
123 * that call. canOverwriteSrc indicates whether the implementation may treat
src as a scratch | 120 * that call. canOverwriteSrc indicates whether the implementation may treat
src as a scratch |
124 * texture and overwrite its contents. When true it is also legal to return
src as the result. | 121 * texture and overwrite its contents. When true it is also legal to return
src as the result. |
125 * Implementations are free to get the GrContext from the src texture in ord
er to create | 122 * Implementations are free to get the GrContext from the src texture in ord
er to create |
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
223 mask and then call filterMask(). If this returns true, the specified blitte
r will be called | 220 mask and then call filterMask(). If this returns true, the specified blitte
r will be called |
224 to render that mask. Returns false if filterMask() returned false. | 221 to render that mask. Returns false if filterMask() returned false. |
225 */ | 222 */ |
226 bool filterRRect(const SkRRect& devRRect, const SkMatrix& ctm, const SkRaste
rClip&, | 223 bool filterRRect(const SkRRect& devRRect, const SkMatrix& ctm, const SkRaste
rClip&, |
227 SkBlitter*, SkPaint::Style style) const; | 224 SkBlitter*, SkPaint::Style style) const; |
228 | 225 |
229 typedef SkFlattenable INHERITED; | 226 typedef SkFlattenable INHERITED; |
230 }; | 227 }; |
231 | 228 |
232 #endif | 229 #endif |
OLD | NEW |