diff options
author | Uoti Urpala <uau@symbol.nonexistent.invalid> | 2008-04-28 12:09:31 +0300 |
---|---|---|
committer | Uoti Urpala <uau@symbol.nonexistent.invalid> | 2008-04-28 12:18:45 +0300 |
commit | eaf7857b7f7ae6b05ce9d129157e0ff33ed2081b (patch) | |
tree | 17005cd968a137ae8902e408e454cfd32fc033ec /osdep/timer-darwin.c | |
parent | c693b77e935e7e34e21bafed2df0ff891d0e25ac (diff) | |
download | mpv-eaf7857b7f7ae6b05ce9d129157e0ff33ed2081b.tar.bz2 mpv-eaf7857b7f7ae6b05ce9d129157e0ff33ed2081b.tar.xz |
timers: Remove GetRelativeTime()
Move the code calculating time delta since last query out of the
platform-specific drivers and into mplayer.c. The platform-specific
drivers now return absolute values only.
The way the code in timer-darwin.c uses doubles in wrapping arithmetic
looks questionable and this change might make problems in it more
visible.
Diffstat (limited to 'osdep/timer-darwin.c')
-rw-r--r-- | osdep/timer-darwin.c | 21 |
1 files changed, 2 insertions, 19 deletions
diff --git a/osdep/timer-darwin.c b/osdep/timer-darwin.c index 38de7dea9d..e087b33f12 100644 --- a/osdep/timer-darwin.c +++ b/osdep/timer-darwin.c @@ -27,7 +27,6 @@ #include "timer.h" /* global variables */ -static double relative_time, startup_time; static double timebase_ratio; const char timer_name[] = "Darwin accurate"; @@ -54,30 +53,17 @@ int usec_sleep(int usec_delay) /* current time in microseconds */ unsigned int GetTimer() { - return (unsigned int)((mach_absolute_time() * timebase_ratio - startup_time) + return (unsigned int)((mach_absolute_time() * timebase_ratio) * 1e6); } /* current time in milliseconds */ unsigned int GetTimerMS() { - return (unsigned int)((mach_absolute_time() * timebase_ratio - startup_time) + return (unsigned int)((mach_absolute_time() * timebase_ratio) * 1e3); } -/* time spent between now and last call in seconds */ -float GetRelativeTime() -{ - double last_time = relative_time; - - if (!relative_time) - InitTimer(); - - relative_time = mach_absolute_time() * timebase_ratio; - - return (float)(relative_time-last_time); -} - /* initialize timer, must be called at least once at start */ void InitTimer() { @@ -86,9 +72,6 @@ void InitTimer() mach_timebase_info(&timebase); timebase_ratio = (double)timebase.numer / (double)timebase.denom * (double)1e-9; - - relative_time = startup_time = - (double)(mach_absolute_time() * timebase_ratio); } #if 0 |