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

Side by Side Diff: bench/TileBench.cpp

Issue 23478013: Major bench refactoring. (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: merge with head agani Created 7 years, 3 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 | « bench/TextBench.cpp ('k') | bench/VertBench.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 /* 2 /*
3 * Copyright 2013 Google Inc. 3 * Copyright 2013 Google Inc.
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 #include "SkBenchmark.h" 9 #include "SkBenchmark.h"
10 #include "SkBitmap.h" 10 #include "SkBitmap.h"
(...skipping 16 matching lines...) Expand all
27 } 27 }
28 28
29 // Test out the special case of a tiled 1xN texture. Test out opacity, 29 // Test out the special case of a tiled 1xN texture. Test out opacity,
30 // filtering and the different tiling modes 30 // filtering and the different tiling modes
31 class ConstXTileBench : public SkBenchmark { 31 class ConstXTileBench : public SkBenchmark {
32 SkPaint fPaint; 32 SkPaint fPaint;
33 SkString fName; 33 SkString fName;
34 bool fDoFilter; 34 bool fDoFilter;
35 bool fDoTrans; 35 bool fDoTrans;
36 bool fDoScale; 36 bool fDoScale;
37 enum { N = SkBENCHLOOP(20) };
38 static const int kWidth = 1; 37 static const int kWidth = 1;
39 static const int kHeight = 300; 38 static const int kHeight = 300;
40 39
41 public: 40 public:
42 ConstXTileBench(void* param, 41 ConstXTileBench(void* param,
43 SkShader::TileMode xTile, 42 SkShader::TileMode xTile,
44 SkShader::TileMode yTile, 43 SkShader::TileMode yTile,
45 bool doFilter, 44 bool doFilter,
46 bool doTrans, 45 bool doTrans,
47 bool doScale) 46 bool doScale)
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
99 if (fDoScale) { 98 if (fDoScale) {
100 r = SkRect::MakeWH(SkIntToScalar(2 * 640), SkIntToScalar(2 * 480)); 99 r = SkRect::MakeWH(SkIntToScalar(2 * 640), SkIntToScalar(2 * 480));
101 canvas->scale(SK_ScalarHalf, SK_ScalarHalf); 100 canvas->scale(SK_ScalarHalf, SK_ScalarHalf);
102 } else { 101 } else {
103 r = SkRect::MakeWH(SkIntToScalar(640), SkIntToScalar(480)); 102 r = SkRect::MakeWH(SkIntToScalar(640), SkIntToScalar(480));
104 } 103 }
105 104
106 SkPaint bgPaint; 105 SkPaint bgPaint;
107 bgPaint.setColor(SK_ColorWHITE); 106 bgPaint.setColor(SK_ColorWHITE);
108 107
109 for (int i = 0; i < N; i++) { 108 for (int i = 0; i < this->getLoops(); i++) {
110 if (fDoTrans) { 109 if (fDoTrans) {
111 canvas->drawRect(r, bgPaint); 110 canvas->drawRect(r, bgPaint);
112 } 111 }
113 112
114 canvas->drawRect(r, paint); 113 canvas->drawRect(r, paint);
115 } 114 }
116 } 115 }
117 116
118 private: 117 private:
119 typedef SkBenchmark INHERITED; 118 typedef SkBenchmark INHERITED;
120 }; 119 };
121 120
122 DEF_BENCH(return new ConstXTileBench(p, SkShader::kRepeat_TileMode, SkShader::kR epeat_TileMode, false, false, true)) 121 DEF_BENCH(return new ConstXTileBench(p, SkShader::kRepeat_TileMode, SkShader::kR epeat_TileMode, false, false, true))
123 DEF_BENCH(return new ConstXTileBench(p, SkShader::kClamp_TileMode, SkShader::kCl amp_TileMode, false, false, false)) 122 DEF_BENCH(return new ConstXTileBench(p, SkShader::kClamp_TileMode, SkShader::kCl amp_TileMode, false, false, false))
124 DEF_BENCH(return new ConstXTileBench(p, SkShader::kMirror_TileMode, SkShader::kM irror_TileMode, false, false, true)) 123 DEF_BENCH(return new ConstXTileBench(p, SkShader::kMirror_TileMode, SkShader::kM irror_TileMode, false, false, true))
125 124
126 DEF_BENCH(return new ConstXTileBench(p, SkShader::kRepeat_TileMode, SkShader::kR epeat_TileMode, true, false, false)) 125 DEF_BENCH(return new ConstXTileBench(p, SkShader::kRepeat_TileMode, SkShader::kR epeat_TileMode, true, false, false))
127 DEF_BENCH(return new ConstXTileBench(p, SkShader::kClamp_TileMode, SkShader::kCl amp_TileMode, true, false, true)) 126 DEF_BENCH(return new ConstXTileBench(p, SkShader::kClamp_TileMode, SkShader::kCl amp_TileMode, true, false, true))
128 DEF_BENCH(return new ConstXTileBench(p, SkShader::kMirror_TileMode, SkShader::kM irror_TileMode, true, false, false)) 127 DEF_BENCH(return new ConstXTileBench(p, SkShader::kMirror_TileMode, SkShader::kM irror_TileMode, true, false, false))
129 128
130 DEF_BENCH(return new ConstXTileBench(p, SkShader::kRepeat_TileMode, SkShader::kR epeat_TileMode, false, true, true)) 129 DEF_BENCH(return new ConstXTileBench(p, SkShader::kRepeat_TileMode, SkShader::kR epeat_TileMode, false, true, true))
131 DEF_BENCH(return new ConstXTileBench(p, SkShader::kClamp_TileMode, SkShader::kCl amp_TileMode, false, true, false)) 130 DEF_BENCH(return new ConstXTileBench(p, SkShader::kClamp_TileMode, SkShader::kCl amp_TileMode, false, true, false))
132 DEF_BENCH(return new ConstXTileBench(p, SkShader::kMirror_TileMode, SkShader::kM irror_TileMode, false, true, true)) 131 DEF_BENCH(return new ConstXTileBench(p, SkShader::kMirror_TileMode, SkShader::kM irror_TileMode, false, true, true))
133 132
134 DEF_BENCH(return new ConstXTileBench(p, SkShader::kRepeat_TileMode, SkShader::kR epeat_TileMode, true, true, false)) 133 DEF_BENCH(return new ConstXTileBench(p, SkShader::kRepeat_TileMode, SkShader::kR epeat_TileMode, true, true, false))
135 DEF_BENCH(return new ConstXTileBench(p, SkShader::kClamp_TileMode, SkShader::kCl amp_TileMode, true, true, true)) 134 DEF_BENCH(return new ConstXTileBench(p, SkShader::kClamp_TileMode, SkShader::kCl amp_TileMode, true, true, true))
136 DEF_BENCH(return new ConstXTileBench(p, SkShader::kMirror_TileMode, SkShader::kM irror_TileMode, true, true, false)) 135 DEF_BENCH(return new ConstXTileBench(p, SkShader::kMirror_TileMode, SkShader::kM irror_TileMode, true, true, false))
OLDNEW
« no previous file with comments | « bench/TextBench.cpp ('k') | bench/VertBench.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698