Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(35)

Side by Side Diff: bench/ChromeBench.cpp

Issue 99893003: Simplify benchmark internal API. (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: rebase Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « bench/ChecksumBench.cpp ('k') | bench/CmapBench.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2011 Google Inc. 2 * Copyright 2011 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 #include "SkBenchmark.h" 7 #include "SkBenchmark.h"
8 #include "SkCanvas.h" 8 #include "SkCanvas.h"
9 #include "SkPaint.h" 9 #include "SkPaint.h"
10 #include "SkString.h" 10 #include "SkString.h"
(...skipping 443 matching lines...) Expand 10 before | Expand all | Expand 10 after
454 W = 1254, 454 W = 1254,
455 H = 1160, 455 H = 1160,
456 N = 431 456 N = 431
457 }; 457 };
458 public: 458 public:
459 ScrollGmailBench() { } 459 ScrollGmailBench() { }
460 460
461 protected: 461 protected:
462 462
463 virtual const char* onGetName() { return "chrome_scrollGmail"; } 463 virtual const char* onGetName() { return "chrome_scrollGmail"; }
464 virtual void onDraw(SkCanvas* canvas) { 464 virtual void onDraw(const int loops, SkCanvas* canvas) {
465 SkDEBUGCODE(this->validateBounds(canvas)); 465 SkDEBUGCODE(this->validateBounds(canvas));
466 SkPaint paint; 466 SkPaint paint;
467 this->setupPaint(&paint); 467 this->setupPaint(&paint);
468 for (int i = 0; i < N; i++) { 468 for (int i = 0; i < N; i++) {
469 SkRect current; 469 SkRect current;
470 setRectangle(current, i); 470 setRectangle(current, i);
471 for (int j = 0; j < this->getLoops() * gmailScrollingRectSpec[i*3]; j++) { 471 for (int j = 0; j < loops * gmailScrollingRectSpec[i*3]; j++) {
472 canvas->drawRect(current, paint); 472 canvas->drawRect(current, paint);
473 } 473 }
474 } 474 }
475 } 475 }
476 virtual SkIPoint onGetSize() { return SkIPoint::Make(W, H); } 476 virtual SkIPoint onGetSize() { return SkIPoint::Make(W, H); }
477 477
478 void setRectangle(SkRect& current, int i) { 478 void setRectangle(SkRect& current, int i) {
479 current.set(0, 0, 479 current.set(0, 0,
480 SkIntToScalar(gmailScrollingRectSpec[i*3+1]), SkIntToScalar( gmailScrollingRectSpec[i*3+2])); 480 SkIntToScalar(gmailScrollingRectSpec[i*3+1]), SkIntToScalar( gmailScrollingRectSpec[i*3+2]));
481 } 481 }
482 void validateBounds(SkCanvas* canvas) { 482 void validateBounds(SkCanvas* canvas) {
483 SkIRect bounds; 483 SkIRect bounds;
484 canvas->getClipDeviceBounds(&bounds); 484 canvas->getClipDeviceBounds(&bounds);
485 SkASSERT(bounds.right()-bounds.left() >= W); 485 SkASSERT(bounds.right()-bounds.left() >= W);
486 SkASSERT(bounds.bottom()-bounds.top() >= H); 486 SkASSERT(bounds.bottom()-bounds.top() >= H);
487 } 487 }
488 488
489 489
490 private: 490 private:
491 typedef SkBenchmark INHERITED; 491 typedef SkBenchmark INHERITED;
492 }; 492 };
493 493
494 // Disabled this benchmark: it takes 15x longer than any other benchmark 494 // Disabled this benchmark: it takes 15x longer than any other benchmark
495 // and is probably not giving us important information. 495 // and is probably not giving us important information.
496 // DEF_BENCH(return SkNEW(ScrollGmailBench)); 496 // DEF_BENCH(return SkNEW(ScrollGmailBench));
OLDNEW
« no previous file with comments | « bench/ChecksumBench.cpp ('k') | bench/CmapBench.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698