aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/ports/SkTime_Unix.cpp
diff options
context:
space:
mode:
authorGravatar commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2014-04-24 20:17:24 +0000
committerGravatar commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2014-04-24 20:17:24 +0000
commitd0306a15938a971e10dd8648d3e17b001c4b0014 (patch)
treec4ef3cae52cc3973ae40338ae5019d00375bf21f /src/ports/SkTime_Unix.cpp
parentf1c0135425c6ed415ad303ac99e1a49f6a66a2ad (diff)
Revert of Add nanosecond timer. (https://codereview.chromium.org/250243002/)
Reason for revert: breaks EVERYTHING Original issue's description: > Add nanosecond timer. > > I've been finding it hard to get enough resolution out of our existing timers when measuring really tiny pictures. > > BUG=skia:2378 > > Committed: http://code.google.com/p/skia/source/detail?r=14362 R=bsalomon@google.com, bungeman@google.com, mtklein@chromium.org TBR=bsalomon@google.com, bungeman@google.com, mtklein@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia:2378 Author: mtklein@google.com Review URL: https://codereview.chromium.org/258703002 git-svn-id: http://skia.googlecode.com/svn/trunk@14364 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/ports/SkTime_Unix.cpp')
-rw-r--r--src/ports/SkTime_Unix.cpp40
1 files changed, 9 insertions, 31 deletions
diff --git a/src/ports/SkTime_Unix.cpp b/src/ports/SkTime_Unix.cpp
index cdf7f3d947..f519a69d07 100644
--- a/src/ports/SkTime_Unix.cpp
+++ b/src/ports/SkTime_Unix.cpp
@@ -12,8 +12,10 @@
#include <sys/time.h>
#include <time.h>
-void SkTime::GetDateTime(DateTime* dt) {
- if (dt) {
+void SkTime::GetDateTime(DateTime* dt)
+{
+ if (dt)
+ {
time_t m_time;
time(&m_time);
struct tm* tstruct;
@@ -29,33 +31,9 @@ void SkTime::GetDateTime(DateTime* dt) {
}
}
-#ifdef __MACH__
-# include <mach/mach_time.h>
-
-namespace {
-
-struct ConversionFactor {
- ConversionFactor() {
- mach_timebase_info_data_t timebase;
- mach_timebase_info(&timebase);
- toNanos = (double) timebase.numer / timebase.denom;
- }
- double toNanos;
-};
-
-} // namespace
-
-SkNSec SkTime::GetNSecs() {
- static ConversionFactor convert; // Since already know we're on Mac, this is threadsafe.
- return mach_absolute_time() * convert.toNanos;
+SkMSec SkTime::GetMSecs()
+{
+ struct timeval tv;
+ gettimeofday(&tv, NULL);
+ return (SkMSec) (tv.tv_sec * 1000 + tv.tv_usec / 1000 ); // microseconds to milliseconds
}
-
-#else // Linux, presumably all others too
-
-SkNSec SkTime::GetNSecs() {
- struct timespec time;
- clock_gettime(CLOCK_MONOTONIC, &time);
- return (SkNSec)(time.tv_sec * 1000000000 + time.tv_nsec);
-}
-
-#endif