From 347fd4e9fde6843128c841a3f0ba2482154781a5 Mon Sep 17 00:00:00 2001 From: "robertphillips@google.com" Date: Wed, 15 May 2013 14:18:32 +0000 Subject: 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 --- bench/GameBench.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'bench/GameBench.cpp') 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)); ) -- cgit v1.2.3