| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2012 Google Inc. | 2 * Copyright 2012 Google Inc. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
| 5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
| 6 */ | 6 */ |
| 7 | 7 |
| 8 #include "SkBenchmark.h" | 8 #include "SkBenchmark.h" |
| 9 #include "SkMatrix44.h" | 9 #include "SkMatrix44.h" |
| 10 #include "SkRandom.h" | 10 #include "SkRandom.h" |
| 11 #include "SkString.h" | 11 #include "SkString.h" |
| 12 | 12 |
| 13 class Matrix44Bench : public SkBenchmark { | 13 class Matrix44Bench : public SkBenchmark { |
| 14 SkString fName; | 14 SkString fName; |
| 15 enum { N = 10000 }; | |
| 16 public: | 15 public: |
| 17 Matrix44Bench(void* param, const char name[]) : INHERITED(param) { | 16 Matrix44Bench(void* param, const char name[]) : INHERITED(param) { |
| 18 fName.printf("matrix44_%s", name); | 17 fName.printf("matrix44_%s", name); |
| 19 fIsRendering = false; | 18 fIsRendering = false; |
| 20 } | 19 } |
| 21 | 20 |
| 22 virtual void performTest() = 0; | 21 virtual void performTest() = 0; |
| 23 | 22 |
| 24 protected: | 23 protected: |
| 25 virtual int mulLoopCount() const { return 1; } | 24 virtual int mulLoopCount() const { return 1; } |
| 26 | 25 |
| 27 virtual const char* onGetName() { | 26 virtual const char* onGetName() { |
| 28 return fName.c_str(); | 27 return fName.c_str(); |
| 29 } | 28 } |
| 30 | 29 |
| 31 virtual void onDraw(SkCanvas*) { | 30 virtual void onDraw(SkCanvas*) { |
| 32 int n = SkBENCHLOOP(N * this->mulLoopCount()); | 31 for (int i = 0; i < this->getLoops(); i++) { |
| 33 for (int i = 0; i < n; i++) { | |
| 34 this->performTest(); | 32 this->performTest(); |
| 35 } | 33 } |
| 36 } | 34 } |
| 37 | 35 |
| 38 private: | 36 private: |
| 39 typedef SkBenchmark INHERITED; | 37 typedef SkBenchmark INHERITED; |
| 40 }; | 38 }; |
| 41 | 39 |
| 42 class EqualsMatrix44Bench : public Matrix44Bench { | 40 class EqualsMatrix44Bench : public Matrix44Bench { |
| 43 public: | 41 public: |
| (...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 256 DEF_BENCH( return new SetIdentityMatrix44Bench(p); ) | 254 DEF_BENCH( return new SetIdentityMatrix44Bench(p); ) |
| 257 DEF_BENCH( return new EqualsMatrix44Bench(p); ) | 255 DEF_BENCH( return new EqualsMatrix44Bench(p); ) |
| 258 DEF_BENCH( return new PreScaleMatrix44Bench(p); ) | 256 DEF_BENCH( return new PreScaleMatrix44Bench(p); ) |
| 259 DEF_BENCH( return new PostScaleMatrix44Bench(p); ) | 257 DEF_BENCH( return new PostScaleMatrix44Bench(p); ) |
| 260 DEF_BENCH( return new InvertMatrix44Bench(p); ) | 258 DEF_BENCH( return new InvertMatrix44Bench(p); ) |
| 261 DEF_BENCH( return new InvertAffineMatrix44Bench(p); ) | 259 DEF_BENCH( return new InvertAffineMatrix44Bench(p); ) |
| 262 DEF_BENCH( return new InvertScaleTranslateMatrix44Bench(p); ) | 260 DEF_BENCH( return new InvertScaleTranslateMatrix44Bench(p); ) |
| 263 DEF_BENCH( return new InvertTranslateMatrix44Bench(p); ) | 261 DEF_BENCH( return new InvertTranslateMatrix44Bench(p); ) |
| 264 DEF_BENCH( return new SetConcatMatrix44Bench(p); ) | 262 DEF_BENCH( return new SetConcatMatrix44Bench(p); ) |
| 265 DEF_BENCH( return new GetTypeMatrix44Bench(p); ) | 263 DEF_BENCH( return new GetTypeMatrix44Bench(p); ) |
| OLD | NEW |