diff options
author | robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2013-05-15 14:18:32 +0000 |
---|---|---|
committer | robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2013-05-15 14:18:32 +0000 |
commit | 347fd4e9fde6843128c841a3f0ba2482154781a5 (patch) | |
tree | f546f5d6eb2e1ec2fbb6b4781448e6c4fffd1856 /bench/GameBench.cpp | |
parent | 6db962617ff75cadaa6574d85620f7fe0161e23e (diff) |
Add aligned case to game bench
https://codereview.chromium.org/15167005/
git-svn-id: http://skia.googlecode.com/svn/trunk@9138 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'bench/GameBench.cpp')
-rw-r--r-- | bench/GameBench.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/bench/GameBench.cpp b/bench/GameBench.cpp index 36a67113a8..4998bd8414 100644 --- a/bench/GameBench.cpp +++ b/bench/GameBench.cpp @@ -22,10 +22,11 @@ public: kRotate_Type }; - GameBench(void* param, Type type, bool partialClear) + GameBench(void* param, Type type, bool partialClear, bool aligned = false) : INHERITED(param) , fType(type) , fPartialClear(partialClear) + , fAligned(aligned) , fName("game") , fNumSaved(0) , fInitialized(false) { @@ -42,6 +43,10 @@ public: break; }; + if (aligned) { + fName.append("_aligned"); + } + if (partialClear) { fName.append("_partial"); } else { @@ -130,6 +135,11 @@ protected: fSaved[fNumSaved][0] = transRand.nextRangeScalar(0.0f, maxTransX); fSaved[fNumSaved][1] = transRand.nextRangeScalar(0.0f, maxTransY); + if (fAligned) { + // make the translations integer aligned + fSaved[fNumSaved][0] = SkScalarFloorToScalar(fSaved[fNumSaved][0]); + fSaved[fNumSaved][1] = SkScalarFloorToScalar(fSaved[fNumSaved][1]); + } mat.setTranslate(fSaved[fNumSaved][0], fSaved[fNumSaved][1]); @@ -160,6 +170,7 @@ private: Type fType; bool fPartialClear; + bool fAligned; SkString fName; int fNumSaved; // num draws stored in 'fSaved' bool fInitialized; @@ -197,9 +208,11 @@ private: // Partial clear DEF_BENCH( return SkNEW_ARGS(GameBench, (p, GameBench::kScale_Type, false)); ) DEF_BENCH( return SkNEW_ARGS(GameBench, (p, GameBench::kTranslate_Type, false)); ) +DEF_BENCH( return SkNEW_ARGS(GameBench, (p, GameBench::kTranslate_Type, false, true)); ) DEF_BENCH( return SkNEW_ARGS(GameBench, (p, GameBench::kRotate_Type, false)); ) // Full clear DEF_BENCH( return SkNEW_ARGS(GameBench, (p, GameBench::kScale_Type, true)); ) DEF_BENCH( return SkNEW_ARGS(GameBench, (p, GameBench::kTranslate_Type, true)); ) +DEF_BENCH( return SkNEW_ARGS(GameBench, (p, GameBench::kTranslate_Type, true, true)); ) DEF_BENCH( return SkNEW_ARGS(GameBench, (p, GameBench::kRotate_Type, true)); ) |