aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench/RectBench.cpp
diff options
context:
space:
mode:
authorGravatar joshualitt <joshualitt@chromium.org>2015-09-24 12:42:02 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2015-09-24 12:42:02 -0700
commit8db65a6d0c60d0e31eadc64d427f6e7f050e1140 (patch)
treee6d090fa3eae94e918ec7a18022064a4c66d241a /bench/RectBench.cpp
parent89438a1dcec1b4ccebc1c2a20e348d14b8b6ff0d (diff)
stop scaling loops and improve warmup bench
Diffstat (limited to 'bench/RectBench.cpp')
-rw-r--r--bench/RectBench.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/bench/RectBench.cpp b/bench/RectBench.cpp
index f793c8ff57..23fb7c50c2 100644
--- a/bench/RectBench.cpp
+++ b/bench/RectBench.cpp
@@ -114,6 +114,30 @@ private:
typedef RectBench INHERITED;
};
+class TransparentRectBench : public RectBench {
+public:
+ TransparentRectBench() : INHERITED(1, 0) {}
+
+protected:
+ void setupPaint(SkPaint* paint) override {
+ this->INHERITED::setupPaint(paint);
+ // draw non opaque rect
+ paint->setAlpha(0x80);
+ }
+
+ const char* onGetName() override {
+ fName.set(this->INHERITED::onGetName());
+ fName.prepend("transparent_");
+ return fName.c_str();
+ }
+
+private:
+ SkString fName;
+
+ typedef RectBench INHERITED;
+};
+
+
class OvalBench : public RectBench {
public:
OvalBench(int shift, int stroke = 0) : RectBench(shift, stroke) {}
@@ -269,6 +293,8 @@ DEF_BENCH(return new PointsBench(SkCanvas::kPolygon_PointMode, "polygon");)
DEF_BENCH(return new SrcModeRectBench();)
+DEF_BENCH(return new TransparentRectBench();)
+
/* init the blitmask bench
*/
DEF_BENCH(return new BlitMaskBench(SkCanvas::kPoints_PointMode,