SDL
2.0
|
Go to the source code of this file.
Macros | |
#define | SDL_TICKS_PASSED(A, B) ((Sint32)((B) - (A)) <= 0) |
Compare SDL ticks values, and return true if A has passed B. More... | |
Typedefs | |
typedef Uint32(* | SDL_TimerCallback) (Uint32 interval, void *param) |
typedef int | SDL_TimerID |
Functions | |
Uint32 | SDL_GetTicks (void) |
Get the number of milliseconds since the SDL library initialization. More... | |
Uint64 | SDL_GetPerformanceCounter (void) |
Get the current value of the high resolution counter. More... | |
Uint64 | SDL_GetPerformanceFrequency (void) |
Get the count per second of the high resolution counter. More... | |
void | SDL_Delay (Uint32 ms) |
Wait a specified number of milliseconds before returning. More... | |
SDL_TimerID | SDL_AddTimer (Uint32 interval, SDL_TimerCallback callback, void *param) |
Add a new timer to the pool of timers already running. More... | |
SDL_bool | SDL_RemoveTimer (SDL_TimerID id) |
Remove a timer knowing its ID. More... | |
Header for the SDL time management routines.
Definition in file SDL_timer.h.
#define SDL_TICKS_PASSED | ( | A, | |
B | |||
) | ((Sint32)((B) - (A)) <= 0) |
Compare SDL ticks values, and return true if A has passed B.
e.g. if you want to wait 100 ms, you could do this: Uint32 timeout = SDL_GetTicks() + 100; while (!SDL_TICKS_PASSED(SDL_GetTicks(), timeout)) { ... do work until timeout has elapsed }
Definition at line 56 of file SDL_timer.h.
Function prototype for the timer callback function.
The callback function is passed the current timer interval and returns the next timer interval. If the returned value is the same as the one passed in, the periodic alarm continues, otherwise a new alarm is scheduled. If the callback returns 0, the periodic alarm is cancelled.
Definition at line 81 of file SDL_timer.h.
typedef int SDL_TimerID |
Definition of the timer ID type.
Definition at line 86 of file SDL_timer.h.
SDL_TimerID SDL_AddTimer | ( | Uint32 | interval, |
SDL_TimerCallback | callback, | ||
void * | param | ||
) |
Add a new timer to the pool of timers already running.
Definition at line 279 of file SDL_timer.c.
References SDL_Timer::callback, callback(), SDL_Timer::canceled, SDL_Timer::interval, SDL_Timer::next, SDL_TimerMap::next, SDL_Timer::param, SDL_Timer::scheduled, SDL_AtomicGet, SDL_AtomicIncRef, SDL_AtomicLock, SDL_AtomicSet, SDL_AtomicUnlock, SDL_free, SDL_GetTicks(), SDL_LockMutex, SDL_malloc, SDL_OutOfMemory, SDL_RemoveTimer(), SDL_SemPost, SDL_timer_data, SDL_TimerInit(), SDL_UnlockMutex, SDL_TimerMap::timer, SDL_Timer::timerID, and SDL_TimerMap::timerID.
Get the count per second of the high resolution counter.
Referenced by main(), render(), and timer_getPerformanceFrequency().
Get the number of milliseconds since the SDL library initialization.
Referenced by ConfigureBinding(), loop(), main(), runAdder(), RunFIFOTest(), SDL_AddTimer(), SDL_PrivateGameControllerButton(), SDL_PrivateSendMouseButton(), SDL_PushEvent(), SDL_SemWaitTimeout(), SDL_TimerThread(), SDL_WaitEventTimeout(), TestWaitTimeout(), timer_delayAndGetTicks(), and WatchJoystick().
SDL_bool SDL_RemoveTimer | ( | SDL_TimerID | id | ) |
Remove a timer knowing its ID.
Definition at line 342 of file SDL_timer.c.
References SDL_Timer::canceled, SDL_TimerMap::next, NULL, SDL_AtomicGet, SDL_AtomicSet, SDL_FALSE, SDL_free, SDL_LockMutex, SDL_timer_data, SDL_TRUE, SDL_UnlockMutex, SDL_TimerMap::timer, and SDL_TimerMap::timerID.
Referenced by SDL_AddTimer().