Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(441)

Side by Side Diff: gm/blurrect.cpp

Issue 253833002: move common blur types into central header (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: rebase Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « gm/blurquickreject.cpp ('k') | gm/blurroundrect.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2012 Google Inc. 2 * Copyright 2012 Google Inc.
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 #include "gm.h" 8 #include "gm.h"
9 #include "SkBlurMask.h" 9 #include "SkBlurMask.h"
10 #include "SkBlurMaskFilter.h" 10 #include "SkBlurMaskFilter.h"
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 path.setFillType(SkPath::kEvenOdd_FillType); 51 path.setFillType(SkPath::kEvenOdd_FillType);
52 52
53 canvas->drawPath(path, p); 53 canvas->drawPath(path, p);
54 } 54 }
55 55
56 #include "SkGradientShader.h" 56 #include "SkGradientShader.h"
57 57
58 typedef void (*PaintProc)(SkPaint*, SkScalar width); 58 typedef void (*PaintProc)(SkPaint*, SkScalar width);
59 59
60 class BlurRectGM : public skiagm::GM { 60 class BlurRectGM : public skiagm::GM {
61 SkAutoTUnref<SkMaskFilter> fMaskFilters[SkBlurMaskFilter::kBlurStyleCount] ; 61 SkAutoTUnref<SkMaskFilter> fMaskFilters[kLastEnum_SkBlurStyle + 1];
62 SkString fName; 62 SkString fName;
63 SkAlpha fAlpha; 63 SkAlpha fAlpha;
64 public: 64 public:
65 BlurRectGM(const char name[], U8CPU alpha) 65 BlurRectGM(const char name[], U8CPU alpha)
66 : fName(name) 66 : fName(name)
67 , fAlpha(SkToU8(alpha)) { 67 , fAlpha(SkToU8(alpha)) {
68 } 68 }
69 69
70 protected: 70 protected:
71 virtual void onOnceBeforeDraw() SK_OVERRIDE { 71 virtual void onOnceBeforeDraw() SK_OVERRIDE {
72 for (int i = 0; i < SkBlurMaskFilter::kBlurStyleCount; ++i) { 72 for (int i = 0; i <= kLastEnum_SkBlurStyle; ++i) {
73 fMaskFilters[i].reset(SkBlurMaskFilter::Create((SkBlurMaskFilter::Bl urStyle) i, 73 fMaskFilters[i].reset(SkBlurMaskFilter::Create((SkBlurStyle)i,
74 SkBlurMask::ConvertRadiusToSigma(SkIntToScalar (STROKE_WIDTH/2)), 74 SkBlurMask::ConvertRadiusToSigma(SkIntToScalar (STROKE_WIDTH/2)),
75 SkBlurMaskFilter::kHighQuality_BlurFlag)); 75 SkBlurMaskFilter::kHighQuality_BlurFlag));
76 } 76 }
77 } 77 }
78 78
79 virtual SkString onShortName() { 79 virtual SkString onShortName() {
80 return fName; 80 return fName;
81 } 81 }
82 82
83 virtual SkISize onISize() { 83 virtual SkISize onISize() {
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
136 } 136 }
137 } 137 }
138 private: 138 private:
139 typedef GM INHERITED; 139 typedef GM INHERITED;
140 }; 140 };
141 141
142 class BlurRectCompareGM : public skiagm::GM { 142 class BlurRectCompareGM : public skiagm::GM {
143 SkString fName; 143 SkString fName;
144 unsigned int fRectWidth, fRectHeight; 144 unsigned int fRectWidth, fRectHeight;
145 SkScalar fRadius; 145 SkScalar fRadius;
146 SkBlurMask::Style fStyle; 146 SkBlurStyle fStyle;
147 public: 147 public:
148 BlurRectCompareGM(const char name[], unsigned int rectWidth, 148 BlurRectCompareGM(const char name[], unsigned int rectWidth,
149 unsigned int rectHeight, float radius, 149 unsigned int rectHeight, float radius,
150 SkBlurMask::Style style) 150 SkBlurStyle style)
151 : fName(name) 151 : fName(name)
152 , fRectWidth(rectWidth) 152 , fRectWidth(rectWidth)
153 , fRectHeight(rectHeight) 153 , fRectHeight(rectHeight)
154 , fRadius(radius) 154 , fRadius(radius)
155 , fStyle(style) { 155 , fStyle(style) {
156 } 156 }
157 int width() const { 157 int width() const {
158 return fRectWidth; 158 return fRectWidth;
159 } 159 }
160 int height() const { 160 int height() const {
161 return fRectHeight; 161 return fRectHeight;
162 } 162 }
163 SkScalar radius() const { 163 SkScalar radius() const {
164 return fRadius; 164 return fRadius;
165 } 165 }
166 SkBlurMask::Style style() const { 166 SkBlurStyle style() const {
167 return fStyle; 167 return fStyle;
168 } 168 }
169 169
170 protected: 170 protected:
171 virtual SkString onShortName() { 171 virtual SkString onShortName() {
172 return fName; 172 return fName;
173 } 173 }
174 174
175 virtual SkISize onISize() { 175 virtual SkISize onISize() {
176 return SkISize::Make(640, 480); 176 return SkISize::Make(640, 480);
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
208 virtual uint32_t onGetFlags() const { return kSkipPipe_Flag; } 208 virtual uint32_t onGetFlags() const { return kSkipPipe_Flag; }
209 209
210 private: 210 private:
211 typedef GM INHERITED; 211 typedef GM INHERITED;
212 }; 212 };
213 213
214 class BlurRectFastGM: public BlurRectCompareGM { 214 class BlurRectFastGM: public BlurRectCompareGM {
215 public: 215 public:
216 BlurRectFastGM(const char name[], unsigned int rectWidth, 216 BlurRectFastGM(const char name[], unsigned int rectWidth,
217 unsigned int rectHeight, float blurRadius, 217 unsigned int rectHeight, float blurRadius,
218 SkBlurMask::Style style) : 218 SkBlurStyle style) :
219 INHERITED(name, rectWidth, rectHeight, blurRadius, style) { 219 INHERITED(name, rectWidth, rectHeight, blurRadius, style) {
220 } 220 }
221 221
222 protected: 222 protected:
223 virtual bool makeMask(SkMask *m, const SkRect& r) SK_OVERRIDE { 223 virtual bool makeMask(SkMask *m, const SkRect& r) SK_OVERRIDE {
224 return SkBlurMask::BlurRect(SkBlurMask::ConvertRadiusToSigma(this->radiu s()), 224 return SkBlurMask::BlurRect(SkBlurMask::ConvertRadiusToSigma(this->radiu s()),
225 m, r, this->style()); 225 m, r, this->style());
226 } 226 }
227 private: 227 private:
228 typedef BlurRectCompareGM INHERITED; 228 typedef BlurRectCompareGM INHERITED;
229 }; 229 };
230 230
231 class BlurRectSlowGM: public BlurRectCompareGM { 231 class BlurRectSlowGM: public BlurRectCompareGM {
232 public: 232 public:
233 BlurRectSlowGM(const char name[], unsigned int rectWidth, unsigned int rectH eight, 233 BlurRectSlowGM(const char name[], unsigned int rectWidth, unsigned int rectH eight,
234 float blurRadius, SkBlurMask::Style style) 234 float blurRadius, SkBlurStyle style)
235 : INHERITED(name, rectWidth, rectHeight, blurRadius, style) { 235 : INHERITED(name, rectWidth, rectHeight, blurRadius, style) {
236 } 236 }
237 237
238 protected: 238 protected:
239 virtual bool makeMask(SkMask *m, const SkRect& r) SK_OVERRIDE { 239 virtual bool makeMask(SkMask *m, const SkRect& r) SK_OVERRIDE {
240 SkMask src; 240 SkMask src;
241 r.roundOut(&src.fBounds); 241 r.roundOut(&src.fBounds);
242 src.fBounds.offset(-src.fBounds.fLeft, -src.fBounds.fTop); // move to o rigin 242 src.fBounds.offset(-src.fBounds.fLeft, -src.fBounds.fTop); // move to o rigin
243 src.fFormat = SkMask::kA8_Format; 243 src.fFormat = SkMask::kA8_Format;
244 src.fRowBytes = src.fBounds.width(); 244 src.fRowBytes = src.fBounds.width();
245 src.fImage = SkMask::AllocImage(src.computeTotalImageSize()); 245 src.fImage = SkMask::AllocImage(src.computeTotalImageSize());
246 SkAutoMaskFreeImage amfi(src.fImage); 246 SkAutoMaskFreeImage amfi(src.fImage);
247 247
248 memset(src.fImage, 0xff, src.computeTotalImageSize()); 248 memset(src.fImage, 0xff, src.computeTotalImageSize());
249 249
250 return SkBlurMask::BoxBlur(m, src, 250 return SkBlurMask::BoxBlur(m, src,
251 SkBlurMask::ConvertRadiusToSigma(this->radius ()), 251 SkBlurMask::ConvertRadiusToSigma(this->radius ()),
252 this->style(), this->getQuality()); 252 this->style(), this->getQuality());
253 } 253 }
254 254
255 virtual SkBlurMask::Quality getQuality() { 255 virtual SkBlurQuality getQuality() {
256 return SkBlurMask::kHigh_Quality; 256 return kHigh_SkBlurQuality;
257 } 257 }
258 private: 258 private:
259 typedef BlurRectCompareGM INHERITED; 259 typedef BlurRectCompareGM INHERITED;
260 }; 260 };
261 261
262 class BlurRectSlowLowGM: public BlurRectSlowGM { 262 class BlurRectSlowLowGM: public BlurRectSlowGM {
263 public: 263 public:
264 BlurRectSlowLowGM(const char name[], unsigned int rectWidth, unsigned int re ctHeight, 264 BlurRectSlowLowGM(const char name[], unsigned int rectWidth, unsigned int re ctHeight,
265 float blurRadius, SkBlurMask::Style style) 265 float blurRadius, SkBlurStyle style)
266 : INHERITED(name, rectWidth, rectHeight, blurRadius, style) { 266 : INHERITED(name, rectWidth, rectHeight, blurRadius, style) {
267 } 267 }
268 268
269 protected: 269 protected:
270 virtual SkBlurMask::Quality getQuality() SK_OVERRIDE { 270 virtual SkBlurQuality getQuality() SK_OVERRIDE {
271 return SkBlurMask::kLow_Quality; 271 return kLow_SkBlurQuality;
272 } 272 }
273 private: 273 private:
274 typedef BlurRectSlowGM INHERITED; 274 typedef BlurRectSlowGM INHERITED;
275 }; 275 };
276 276
277 class BlurRectGroundTruthGM: public BlurRectCompareGM { 277 class BlurRectGroundTruthGM: public BlurRectCompareGM {
278 public: 278 public:
279 BlurRectGroundTruthGM(const char name[], unsigned int rectWidth, unsigned in t rectHeight, 279 BlurRectGroundTruthGM(const char name[], unsigned int rectWidth, unsigned in t rectHeight,
280 float blurRadius, SkBlurMask::Style style) 280 float blurRadius, SkBlurStyle style)
281 : INHERITED(name, rectWidth, rectHeight, blurRadius, style) { 281 : INHERITED(name, rectWidth, rectHeight, blurRadius, style) {
282 } 282 }
283 283
284 protected: 284 protected:
285 virtual bool makeMask(SkMask *m, const SkRect& r) SK_OVERRIDE { 285 virtual bool makeMask(SkMask *m, const SkRect& r) SK_OVERRIDE {
286 SkMask src; 286 SkMask src;
287 r.roundOut(&src.fBounds); 287 r.roundOut(&src.fBounds);
288 src.fBounds.offset(-src.fBounds.fLeft, -src.fBounds.fTop); // move to o rigin 288 src.fBounds.offset(-src.fBounds.fLeft, -src.fBounds.fTop); // move to o rigin
289 src.fFormat = SkMask::kA8_Format; 289 src.fFormat = SkMask::kA8_Format;
290 src.fRowBytes = src.fBounds.width(); 290 src.fRowBytes = src.fBounds.width();
291 src.fImage = SkMask::AllocImage(src.computeTotalImageSize()); 291 src.fImage = SkMask::AllocImage(src.computeTotalImageSize());
292 SkAutoMaskFreeImage amfi(src.fImage); 292 SkAutoMaskFreeImage amfi(src.fImage);
293 293
294 memset(src.fImage, 0xff, src.computeTotalImageSize()); 294 memset(src.fImage, 0xff, src.computeTotalImageSize());
295 295
296 return SkBlurMask::BlurGroundTruth(SkBlurMask::ConvertRadiusToSigma(this ->radius()), 296 return SkBlurMask::BlurGroundTruth(SkBlurMask::ConvertRadiusToSigma(this ->radius()),
297 m, src, this->style()); 297 m, src, this->style());
298 } 298 }
299 299
300 virtual SkBlurMask::Quality getQuality() { 300 virtual SkBlurQuality getQuality() {
301 return SkBlurMask::kHigh_Quality; 301 return kHigh_SkBlurQuality;
302 } 302 }
303 private: 303 private:
304 typedef BlurRectCompareGM INHERITED; 304 typedef BlurRectCompareGM INHERITED;
305 }; 305 };
306 306
307 307
308 ////////////////////////////////////////////////////////////////////////////// 308 //////////////////////////////////////////////////////////////////////////////
309 309
310 DEF_GM(return new BlurRectGM("blurrects", 0xFF);) 310 DEF_GM(return new BlurRectGM("blurrects", 0xFF);)
311 311
312 static const SkScalar kBig = 20; 312 static const SkScalar kBig = 20;
313 static const SkScalar kSmall = 2; 313 static const SkScalar kSmall = 2;
314 314
315 // regular size rects, blurs should be small enough not to completely overlap. 315 // regular size rects, blurs should be small enough not to completely overlap.
316 316
317 DEF_GM(return new BlurRectFastGM( "blurrect_25_100_2_normal_fast", 25, 100, kSma ll, SkBlurMask::kNormal_Style);) 317 DEF_GM(return new BlurRectFastGM( "blurrect_25_100_2_normal_fast", 25, 100, kSma ll, kNormal_SkBlurStyle);)
318 DEF_GM(return new BlurRectFastGM("blurrect_25_100_20_normal_fast", 25, 100, kBig , SkBlurMask::kNormal_Style);) 318 DEF_GM(return new BlurRectFastGM("blurrect_25_100_20_normal_fast", 25, 100, kBig , kNormal_SkBlurStyle);)
319 DEF_GM(return new BlurRectSlowGM( "blurrect_25_100_2_normal_slow", 25, 100, kSma ll, SkBlurMask::kNormal_Style);) 319 DEF_GM(return new BlurRectSlowGM( "blurrect_25_100_2_normal_slow", 25, 100, kSma ll, kNormal_SkBlurStyle);)
320 DEF_GM(return new BlurRectSlowGM("blurrect_25_100_20_normal_slow", 25, 100, kBig , SkBlurMask::kNormal_Style);) 320 DEF_GM(return new BlurRectSlowGM("blurrect_25_100_20_normal_slow", 25, 100, kBig , kNormal_SkBlurStyle);)
321 DEF_GM(return new BlurRectFastGM( "blurrect_25_100_2_inner_fast", 25, 100, kSmal l, SkBlurMask::kInner_Style);) 321 DEF_GM(return new BlurRectFastGM( "blurrect_25_100_2_inner_fast", 25, 100, kSmal l, kInner_SkBlurStyle);)
322 DEF_GM(return new BlurRectFastGM("blurrect_25_100_20_inner_fast", 25, 100, kBig, SkBlurMask::kInner_Style);) 322 DEF_GM(return new BlurRectFastGM("blurrect_25_100_20_inner_fast", 25, 100, kBig, kInner_SkBlurStyle);)
323 DEF_GM(return new BlurRectSlowGM( "blurrect_25_100_2_inner_slow", 25, 100, kSmal l, SkBlurMask::kInner_Style);) 323 DEF_GM(return new BlurRectSlowGM( "blurrect_25_100_2_inner_slow", 25, 100, kSmal l, kInner_SkBlurStyle);)
324 DEF_GM(return new BlurRectSlowGM("blurrect_25_100_20_inner_slow", 25, 100, kBig, SkBlurMask::kInner_Style);) 324 DEF_GM(return new BlurRectSlowGM("blurrect_25_100_20_inner_slow", 25, 100, kBig, kInner_SkBlurStyle);)
325 DEF_GM(return new BlurRectFastGM( "blurrect_25_100_2_outer_fast", 25, 100, kSmal l, SkBlurMask::kOuter_Style);) 325 DEF_GM(return new BlurRectFastGM( "blurrect_25_100_2_outer_fast", 25, 100, kSmal l, kOuter_SkBlurStyle);)
326 DEF_GM(return new BlurRectFastGM("blurrect_25_100_20_outer_fast", 25, 100, kBig, SkBlurMask::kOuter_Style);) 326 DEF_GM(return new BlurRectFastGM("blurrect_25_100_20_outer_fast", 25, 100, kBig, kOuter_SkBlurStyle);)
327 DEF_GM(return new BlurRectSlowGM( "blurrect_25_100_2_outer_slow", 25, 100, kSmal l, SkBlurMask::kOuter_Style);) 327 DEF_GM(return new BlurRectSlowGM( "blurrect_25_100_2_outer_slow", 25, 100, kSmal l, kOuter_SkBlurStyle);)
328 DEF_GM(return new BlurRectSlowGM("blurrect_25_100_20_outer_slow", 25, 100, kBig, SkBlurMask::kOuter_Style);) 328 DEF_GM(return new BlurRectSlowGM("blurrect_25_100_20_outer_slow", 25, 100, kBig, kOuter_SkBlurStyle);)
329 329
330 // skinny tall rects, blurs overlap in X but not y 330 // skinny tall rects, blurs overlap in X but not y
331 331
332 DEF_GM(return new BlurRectFastGM( "blurrect_5_100_2_normal_fast", 5, 100, kSmall , SkBlurMask::kNormal_Style);) 332 DEF_GM(return new BlurRectFastGM( "blurrect_5_100_2_normal_fast", 5, 100, kSmall , kNormal_SkBlurStyle);)
333 DEF_GM(return new BlurRectFastGM("blurrect_5_100_20_normal_fast", 5, 100, kBig, SkBlurMask::kNormal_Style);) 333 DEF_GM(return new BlurRectFastGM("blurrect_5_100_20_normal_fast", 5, 100, kBig, kNormal_SkBlurStyle);)
334 DEF_GM(return new BlurRectSlowGM( "blurrect_5_100_2_normal_slow", 5, 100, kSmall , SkBlurMask::kNormal_Style);) 334 DEF_GM(return new BlurRectSlowGM( "blurrect_5_100_2_normal_slow", 5, 100, kSmall , kNormal_SkBlurStyle);)
335 DEF_GM(return new BlurRectSlowGM("blurrect_5_100_20_normal_slow", 5, 100, kBig, SkBlurMask::kNormal_Style);) 335 DEF_GM(return new BlurRectSlowGM("blurrect_5_100_20_normal_slow", 5, 100, kBig, kNormal_SkBlurStyle);)
336 DEF_GM(return new BlurRectFastGM( "blurrect_5_100_2_inner_fast", 5, 100, kSmall, SkBlurMask::kInner_Style);) 336 DEF_GM(return new BlurRectFastGM( "blurrect_5_100_2_inner_fast", 5, 100, kSmall, kInner_SkBlurStyle);)
337 DEF_GM(return new BlurRectFastGM("blurrect_5_100_20_inner_fast", 5, 100, kBig, S kBlurMask::kInner_Style);) 337 DEF_GM(return new BlurRectFastGM("blurrect_5_100_20_inner_fast", 5, 100, kBig, k Inner_SkBlurStyle);)
338 DEF_GM(return new BlurRectSlowGM( "blurrect_5_100_2_inner_slow", 5, 100, kSmall, SkBlurMask::kInner_Style);) 338 DEF_GM(return new BlurRectSlowGM( "blurrect_5_100_2_inner_slow", 5, 100, kSmall, kInner_SkBlurStyle);)
339 DEF_GM(return new BlurRectSlowGM("blurrect_5_100_20_inner_slow", 5, 100, kBig, S kBlurMask::kInner_Style);) 339 DEF_GM(return new BlurRectSlowGM("blurrect_5_100_20_inner_slow", 5, 100, kBig, k Inner_SkBlurStyle);)
340 DEF_GM(return new BlurRectFastGM( "blurrect_5_100_2_outer_fast", 5, 100, kSmall, SkBlurMask::kOuter_Style);) 340 DEF_GM(return new BlurRectFastGM( "blurrect_5_100_2_outer_fast", 5, 100, kSmall, kOuter_SkBlurStyle);)
341 DEF_GM(return new BlurRectFastGM("blurrect_5_100_20_outer_fast", 5, 100, kBig, S kBlurMask::kOuter_Style);) 341 DEF_GM(return new BlurRectFastGM("blurrect_5_100_20_outer_fast", 5, 100, kBig, k Outer_SkBlurStyle);)
342 DEF_GM(return new BlurRectSlowGM( "blurrect_5_100_2_outer_slow", 5, 100, kSmall, SkBlurMask::kOuter_Style);) 342 DEF_GM(return new BlurRectSlowGM( "blurrect_5_100_2_outer_slow", 5, 100, kSmall, kOuter_SkBlurStyle);)
343 DEF_GM(return new BlurRectSlowGM("blurrect_5_100_20_outer_slow", 5, 100, kBig, S kBlurMask::kOuter_Style);) 343 DEF_GM(return new BlurRectSlowGM("blurrect_5_100_20_outer_slow", 5, 100, kBig, k Outer_SkBlurStyle);)
344 344
345 // tiny rects, blurs overlap in X and Y 345 // tiny rects, blurs overlap in X and Y
346 346
347 DEF_GM(return new BlurRectFastGM( "blurrect_5_5_2_normal_fast", 5, 5, kSmall, Sk BlurMask::kNormal_Style);) 347 DEF_GM(return new BlurRectFastGM( "blurrect_5_5_2_normal_fast", 5, 5, kSmall, kN ormal_SkBlurStyle);)
348 DEF_GM(return new BlurRectFastGM("blurrect_5_5_20_normal_fast", 5, 5, kBig, SkBl urMask::kNormal_Style);) 348 DEF_GM(return new BlurRectFastGM("blurrect_5_5_20_normal_fast", 5, 5, kBig, kNor mal_SkBlurStyle);)
349 DEF_GM(return new BlurRectSlowGM( "blurrect_5_5_2_normal_slow", 5, 5, kSmall, Sk BlurMask::kNormal_Style);) 349 DEF_GM(return new BlurRectSlowGM( "blurrect_5_5_2_normal_slow", 5, 5, kSmall, kN ormal_SkBlurStyle);)
350 DEF_GM(return new BlurRectSlowGM("blurrect_5_5_20_normal_slow", 5, 5, kBig, SkBl urMask::kNormal_Style);) 350 DEF_GM(return new BlurRectSlowGM("blurrect_5_5_20_normal_slow", 5, 5, kBig, kNor mal_SkBlurStyle);)
351 DEF_GM(return new BlurRectFastGM( "blurrect_5_5_2_inner_fast", 5, 5, kSmall, SkB lurMask::kInner_Style);) 351 DEF_GM(return new BlurRectFastGM( "blurrect_5_5_2_inner_fast", 5, 5, kSmall, kIn ner_SkBlurStyle);)
352 DEF_GM(return new BlurRectFastGM("blurrect_5_5_20_inner_fast", 5, 5, kBig, SkBlu rMask::kInner_Style);) 352 DEF_GM(return new BlurRectFastGM("blurrect_5_5_20_inner_fast", 5, 5, kBig, kInne r_SkBlurStyle);)
353 DEF_GM(return new BlurRectSlowGM( "blurrect_5_5_2_inner_slow", 5, 5, kSmall, SkB lurMask::kInner_Style);) 353 DEF_GM(return new BlurRectSlowGM( "blurrect_5_5_2_inner_slow", 5, 5, kSmall, kIn ner_SkBlurStyle);)
354 DEF_GM(return new BlurRectSlowGM("blurrect_5_5_20_inner_slow", 5, 5, kBig, SkBlu rMask::kInner_Style);) 354 DEF_GM(return new BlurRectSlowGM("blurrect_5_5_20_inner_slow", 5, 5, kBig, kInne r_SkBlurStyle);)
355 DEF_GM(return new BlurRectFastGM( "blurrect_5_5_2_outer_fast", 5, 5, kSmall, SkB lurMask::kOuter_Style);) 355 DEF_GM(return new BlurRectFastGM( "blurrect_5_5_2_outer_fast", 5, 5, kSmall, kOu ter_SkBlurStyle);)
356 DEF_GM(return new BlurRectFastGM("blurrect_5_5_20_outer_fast", 5, 5, kBig, SkBlu rMask::kOuter_Style);) 356 DEF_GM(return new BlurRectFastGM("blurrect_5_5_20_outer_fast", 5, 5, kBig, kOute r_SkBlurStyle);)
357 DEF_GM(return new BlurRectSlowGM( "blurrect_5_5_2_outer_slow", 5, 5, kSmall, SkB lurMask::kOuter_Style);) 357 DEF_GM(return new BlurRectSlowGM( "blurrect_5_5_2_outer_slow", 5, 5, kSmall, kOu ter_SkBlurStyle);)
358 DEF_GM(return new BlurRectSlowGM("blurrect_5_5_20_outer_slow", 5, 5, kBig, SkBlu rMask::kOuter_Style);) 358 DEF_GM(return new BlurRectSlowGM("blurrect_5_5_20_outer_slow", 5, 5, kBig, kOute r_SkBlurStyle);)
359 359
360 360
361 #if 0 361 #if 0
362 // dont' need to GM the gaussian convolution; it's slow and intended 362 // dont' need to GM the gaussian convolution; it's slow and intended
363 // as a ground truth comparison only. Leaving these here in case we 363 // as a ground truth comparison only. Leaving these here in case we
364 // ever want to turn these back on for debugging reasons. 364 // ever want to turn these back on for debugging reasons.
365 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_1_simple", 25, 100, 1) ;) 365 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_1_simple", 25, 100, 1) ;)
366 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_2_simple", 25, 100, 2) ;) 366 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_2_simple", 25, 100, 2) ;)
367 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_3_simple", 25, 100, 3) ;) 367 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_3_simple", 25, 100, 3) ;)
368 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_4_simple", 25, 100, 4) ;) 368 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_4_simple", 25, 100, 4) ;)
369 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_5_simple", 25, 100, 5) ;) 369 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_5_simple", 25, 100, 5) ;)
370 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_6_simple", 25, 100, 6) ;) 370 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_6_simple", 25, 100, 6) ;)
371 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_7_simple", 25, 100, 7) ;) 371 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_7_simple", 25, 100, 7) ;)
372 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_8_simple", 25, 100, 8) ;) 372 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_8_simple", 25, 100, 8) ;)
373 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_9_simple", 25, 100, 9) ;) 373 DEF_GM(return new BlurRectGroundTruthGM( "blurrect_25_100_9_simple", 25, 100, 9) ;)
374 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_10_simple", 25, 100, 10 );) 374 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_10_simple", 25, 100, 10 );)
375 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_11_simple", 25, 100, 11 );) 375 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_11_simple", 25, 100, 11 );)
376 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_12_simple", 25, 100, 12 );) 376 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_12_simple", 25, 100, 12 );)
377 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_13_simple", 25, 100, 13 );) 377 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_13_simple", 25, 100, 13 );)
378 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_14_simple", 25, 100, 14 );) 378 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_14_simple", 25, 100, 14 );)
379 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_15_simple", 25, 100, 15 );) 379 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_15_simple", 25, 100, 15 );)
380 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_16_simple", 25, 100, 16 );) 380 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_16_simple", 25, 100, 16 );)
381 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_17_simple", 25, 100, 17 );) 381 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_17_simple", 25, 100, 17 );)
382 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_18_simple", 25, 100, 18 );) 382 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_18_simple", 25, 100, 18 );)
383 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_19_simple", 25, 100, 19 );) 383 DEF_GM(return new BlurRectGroundTruthGM("blurrect_25_100_19_simple", 25, 100, 19 );)
384 #endif 384 #endif
OLDNEW
« no previous file with comments | « gm/blurquickreject.cpp ('k') | gm/blurroundrect.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698