aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench/RectBench.cpp
diff options
context:
space:
mode:
authorGravatar reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2009-09-02 21:12:42 +0000
committerGravatar reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2009-09-02 21:12:42 +0000
commite9d0060f4d7b5a07a220182d83aae3a140784c4b (patch)
tree7d69dc75c6434c5ef7d07a9b0da108827e5056bf /bench/RectBench.cpp
parent34e85803c24224cf098c88f937dad9b2a1a96d51 (diff)
add decode bench
add dictionary for bench tools to see optional cmdline args git-svn-id: http://skia.googlecode.com/svn/trunk@351 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'bench/RectBench.cpp')
-rw-r--r--bench/RectBench.cpp36
1 files changed, 19 insertions, 17 deletions
diff --git a/bench/RectBench.cpp b/bench/RectBench.cpp
index 69e0b005eb..6f34eb5638 100644
--- a/bench/RectBench.cpp
+++ b/bench/RectBench.cpp
@@ -15,7 +15,7 @@ public:
SkRect fRects[N];
SkColor fColors[N];
- RectBench(int shift) : fShift(shift) {
+ RectBench(void* param, int shift) : INHERITED(param), fShift(shift) {
SkRandom rand;
for (int i = 0; i < N; i++) {
int x = rand.nextU() % W;
@@ -53,11 +53,13 @@ protected:
this->drawThisRect(canvas, fRects[i], paint);
}
}
+private:
+ typedef SkBenchmark INHERITED;
};
class OvalBench : public RectBench {
public:
- OvalBench(int shift) : RectBench(shift) {}
+ OvalBench(void* param, int shift) : RectBench(param, shift) {}
protected:
virtual void drawThisRect(SkCanvas* c, const SkRect& r, const SkPaint& p) {
c->drawOval(r, p);
@@ -67,7 +69,7 @@ protected:
class RRectBench : public RectBench {
public:
- RRectBench(int shift) : RectBench(shift) {}
+ RRectBench(void* param, int shift) : RectBench(param, shift) {}
protected:
virtual void drawThisRect(SkCanvas* c, const SkRect& r, const SkPaint& p) {
c->drawRoundRect(r, r.width() / 4, r.height() / 4, p);
@@ -80,8 +82,8 @@ public:
SkCanvas::PointMode fMode;
const char* fName;
- PointsBench(SkCanvas::PointMode mode, const char* name) :
- RectBench(2), fMode(mode) {
+ PointsBench(void* param, SkCanvas::PointMode mode, const char* name) :
+ RectBench(param, 2), fMode(mode) {
fName = name;
}
@@ -105,20 +107,20 @@ protected:
virtual const char* onGetName() { return fName; }
};
-static SkBenchmark* RectFactory1(void*) { return SkNEW_ARGS(RectBench, (1)); }
-static SkBenchmark* RectFactory2(void*) { return SkNEW_ARGS(RectBench, (3)); }
-static SkBenchmark* OvalFactory1(void*) { return SkNEW_ARGS(OvalBench, (1)); }
-static SkBenchmark* OvalFactory2(void*) { return SkNEW_ARGS(OvalBench, (3)); }
-static SkBenchmark* RRectFactory1(void*) { return SkNEW_ARGS(RRectBench, (1)); }
-static SkBenchmark* RRectFactory2(void*) { return SkNEW_ARGS(RRectBench, (3)); }
-static SkBenchmark* PointsFactory(void*) {
- return SkNEW_ARGS(PointsBench, (SkCanvas::kPoints_PointMode, "points"));
+static SkBenchmark* RectFactory1(void* p) { return SkNEW_ARGS(RectBench, (p, 1)); }
+static SkBenchmark* RectFactory2(void* p) { return SkNEW_ARGS(RectBench, (p, 3)); }
+static SkBenchmark* OvalFactory1(void* p) { return SkNEW_ARGS(OvalBench, (p, 1)); }
+static SkBenchmark* OvalFactory2(void* p) { return SkNEW_ARGS(OvalBench, (p, 3)); }
+static SkBenchmark* RRectFactory1(void* p) { return SkNEW_ARGS(RRectBench, (p, 1)); }
+static SkBenchmark* RRectFactory2(void* p) { return SkNEW_ARGS(RRectBench, (p, 3)); }
+static SkBenchmark* PointsFactory(void* p) {
+ return SkNEW_ARGS(PointsBench, (p, SkCanvas::kPoints_PointMode, "points"));
}
-static SkBenchmark* LinesFactory(void*) {
- return SkNEW_ARGS(PointsBench, (SkCanvas::kLines_PointMode, "lines"));
+static SkBenchmark* LinesFactory(void* p) {
+ return SkNEW_ARGS(PointsBench, (p, SkCanvas::kLines_PointMode, "lines"));
}
-static SkBenchmark* PolygonFactory(void*) {
- return SkNEW_ARGS(PointsBench, (SkCanvas::kPolygon_PointMode, "polygon"));
+static SkBenchmark* PolygonFactory(void* p) {
+ return SkNEW_ARGS(PointsBench, (p, SkCanvas::kPolygon_PointMode, "polygon"));
}
static BenchRegistry gRectReg1(RectFactory1);