Index: bench/HardStopGradientBench_ScaleNumColors.cpp |
diff --git a/bench/HardStopGradientBench.cpp b/bench/HardStopGradientBench_ScaleNumColors.cpp |
similarity index 50% |
rename from bench/HardStopGradientBench.cpp |
rename to bench/HardStopGradientBench_ScaleNumColors.cpp |
index 3a323fec6fade66f9ea8428158cea8b068f5ad6d..6ca7dcb01fb2667522c3f4876c8d6ba19d1a490b 100644 |
--- a/bench/HardStopGradientBench.cpp |
+++ b/bench/HardStopGradientBench_ScaleNumColors.cpp |
@@ -28,10 +28,10 @@ static const char* get_tilemode_name(SkShader::TileMode tilemode) { |
} |
} |
-class HardStopGradientBench : public Benchmark { |
+class HardStopGradientBench_ScaleNumColors : public Benchmark { |
public: |
- HardStopGradientBench(SkShader::TileMode tilemode, int count) { |
- fName.printf("hardstop_%s_%03d_colors", get_tilemode_name(tilemode), count); |
+ HardStopGradientBench_ScaleNumColors(SkShader::TileMode tilemode, int count) { |
+ fName.printf("hardstop_scale_num_colors_%s_%03d_colors", get_tilemode_name(tilemode), count); |
fTileMode = tilemode; |
fColorCount = count; |
@@ -45,6 +45,13 @@ public: |
return SkIPoint::Make(kSize, kSize); |
} |
+ /* |
+ * Set up a linear gradient from left to right with |
+ * fColorCount "evenly spaced" colors. The positions |
+ * are also evenly spaced, with the exception of the |
+ * first two, which create a hard stop in order to |
+ * trigger the hard stop code. |
tomhudson
2016/07/26 13:25:14
Nit: runon sentence?
|
+ */ |
void onPreDraw(SkCanvas* canvas) override { |
// Left to right |
SkPoint points[2] = { |
@@ -97,28 +104,28 @@ private: |
}; |
// Clamp |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kClamp_TileMode, 3);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kClamp_TileMode, 4);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kClamp_TileMode, 5);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kClamp_TileMode, 10);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kClamp_TileMode, 25);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kClamp_TileMode, 50);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kClamp_TileMode, 100);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kClamp_TileMode, 3);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kClamp_TileMode, 4);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kClamp_TileMode, 5);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kClamp_TileMode, 10);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kClamp_TileMode, 25);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kClamp_TileMode, 50);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kClamp_TileMode, 100);) |
// Repeat |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kRepeat_TileMode, 3);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kRepeat_TileMode, 4);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kRepeat_TileMode, 5);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kRepeat_TileMode, 10);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kRepeat_TileMode, 25);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kRepeat_TileMode, 50);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kRepeat_TileMode, 100);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kRepeat_TileMode, 3);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kRepeat_TileMode, 4);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kRepeat_TileMode, 5);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kRepeat_TileMode, 10);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kRepeat_TileMode, 25);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kRepeat_TileMode, 50);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kRepeat_TileMode, 100);) |
// Mirror |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kMirror_TileMode, 3);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kMirror_TileMode, 4);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kMirror_TileMode, 5);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kMirror_TileMode, 10);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kMirror_TileMode, 25);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kMirror_TileMode, 50);) |
-DEF_BENCH(return new HardStopGradientBench(SkShader::kMirror_TileMode, 100);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kMirror_TileMode, 3);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kMirror_TileMode, 4);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kMirror_TileMode, 5);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kMirror_TileMode, 10);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kMirror_TileMode, 25);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kMirror_TileMode, 50);) |
+DEF_BENCH(return new HardStopGradientBench_ScaleNumColors(SkShader::kMirror_TileMode, 100);) |