arsa  2.7
Macros | Typedefs | Functions
SDL_timer.h File Reference
#include "SDL_stdinc.h"
#include "SDL_error.h"
#include "begin_code.h"
#include "close_code.h"

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(SDLCALLSDL_TimerCallback) (Uint32 interval, void *param)
 
typedef int SDL_TimerID
 

Functions

DECLSPEC Uint32 SDLCALL SDL_GetTicks (void)
 Get the number of milliseconds since the SDL library initialization. More...
 
DECLSPEC Uint64 SDLCALL SDL_GetPerformanceCounter (void)
 Get the current value of the high resolution counter. More...
 
DECLSPEC Uint64 SDLCALL SDL_GetPerformanceFrequency (void)
 Get the count per second of the high resolution counter. More...
 
DECLSPEC void SDLCALL SDL_Delay (Uint32 ms)
 Wait a specified number of milliseconds before returning. More...
 
DECLSPEC SDL_TimerID SDLCALL SDL_AddTimer (Uint32 interval, SDL_TimerCallback callback, void *param)
 Add a new timer to the pool of timers already running. More...
 
DECLSPEC SDL_bool SDLCALL SDL_RemoveTimer (SDL_TimerID id)
 Remove a timer knowing its ID. More...
 

Detailed Description

Header for the SDL time management routines.

Definition in file SDL_timer.h.

Macro Definition Documentation

◆ SDL_TICKS_PASSED

#define SDL_TICKS_PASSED (   A,
 
)    ((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.

Typedef Documentation

◆ SDL_TimerCallback

typedef Uint32(SDLCALL * SDL_TimerCallback) (Uint32 interval, void *param)

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.

◆ SDL_TimerID

typedef int SDL_TimerID

Definition of the timer ID type.

Definition at line 86 of file SDL_timer.h.

Function Documentation

◆ SDL_AddTimer()

DECLSPEC SDL_TimerID SDLCALL SDL_AddTimer ( Uint32  interval,
SDL_TimerCallback  callback,
void param 
)

Add a new timer to the pool of timers already running.

Returns
A timer ID, or 0 when an error occurs.

◆ SDL_Delay()

DECLSPEC void SDLCALL SDL_Delay ( Uint32  ms)

Wait a specified number of milliseconds before returning.

◆ SDL_GetPerformanceCounter()

DECLSPEC Uint64 SDLCALL SDL_GetPerformanceCounter ( void  )

Get the current value of the high resolution counter.

◆ SDL_GetPerformanceFrequency()

DECLSPEC Uint64 SDLCALL SDL_GetPerformanceFrequency ( void  )

Get the count per second of the high resolution counter.

◆ SDL_GetTicks()

DECLSPEC Uint32 SDLCALL SDL_GetTicks ( void  )

Get the number of milliseconds since the SDL library initialization.

Note
This value wraps if the program runs for more than ~49 days.

◆ SDL_RemoveTimer()

DECLSPEC SDL_bool SDLCALL SDL_RemoveTimer ( SDL_TimerID  id)

Remove a timer knowing its ID.

Returns
A boolean value indicating success or failure.
Warning
It is not safe to remove a timer multiple times.