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

Unified Diff: tools/timer/Timer.h

Issue 344213003: Move BenchTimer to tools as Timer (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: fixes Created 6 years, 6 months 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 side-by-side diff with in-line comments
Download patch
Index: tools/timer/Timer.h
diff --git a/bench/BenchTimer.h b/tools/timer/Timer.h
similarity index 53%
rename from bench/BenchTimer.h
rename to tools/timer/Timer.h
index 2abf10b80f9e1d4cca7234cbbd2782af8a37c980..15c93f5603cae9478574a7136069a163ca427768 100644
--- a/bench/BenchTimer.h
+++ b/tools/timer/Timer.h
@@ -1,18 +1,25 @@
-
/*
* Copyright 2011 Google Inc.
*
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
-#ifndef SkBenchTimer_DEFINED
-#define SkBenchTimer_DEFINED
+#ifndef Timer_DEFINED
+#define Timer_DEFINED
-#include <SkTypes.h>
+#include "SkTypes.h"
+#if defined(SK_BUILD_FOR_WIN32)
+ #include "SysTimer_windows.h"
+#elif defined(SK_BUILD_FOR_MAC) || defined(SK_BUILD_FOR_IOS)
+ #include "SysTimer_mach.h"
+#elif defined(SK_BUILD_FOR_UNIX) || defined(SK_BUILD_FOR_ANDROID)
+ #include "SysTimer_posix.h"
+#endif
-class BenchSysTimer;
-class BenchGpuTimer;
+#if SK_SUPPORT_GPU
+ #include "GpuTimer.h"
+#endif
class SkGLContextHelper;
@@ -25,13 +32,15 @@ class SkGLContextHelper;
* times and (for GPU configurations) can be used to roughly (very
* roughly) gauge the GPU load/backlog.
*/
-class BenchTimer {
+class Timer {
public:
- BenchTimer(SkGLContextHelper* gl = NULL);
- ~BenchTimer();
- void start(double durationScale = 1);
- void end();
+ explicit Timer(SkGLContextHelper* gl = NULL);
+
+ void start();
void truncatedEnd();
+ void end();
+
+ // All times in milliseconds.
double fCpu;
double fWall;
double fTruncatedCpu;
@@ -39,29 +48,26 @@ public:
double fGpu;
private:
- BenchSysTimer* fSysTimer;
- BenchSysTimer* fTruncatedSysTimer;
+ SysTimer fSysTimer;
+ SysTimer fTruncatedSysTimer;
#if SK_SUPPORT_GPU
- BenchGpuTimer* fGpuTimer;
+ GpuTimer fGpuTimer;
#endif
- double fDurationScale; // for this start/end session
};
-// Same as BenchTimer above, supporting only fWall but with much lower overhead.
-// (Typically, ~30ns instead of BenchTimer's ~1us.)
+// Same as Timer above, supporting only fWall but with much lower overhead.
+// (Typically, ~30ns instead of Timer's ~1us.)
class WallTimer {
public:
WallTimer();
- ~WallTimer();
- void start(double durationScale = 1);
+ void start();
void end();
- double fWall;
+ double fWall; // Milliseconds.
private:
- BenchSysTimer* fSysTimer;
- double fDurationScale;
+ SysTimer fSysTimer;
};
#endif

Powered by Google App Engine
This is Rietveld 408576698