Function prototype for the nanosecond timer callback function.
Defined in <SDL3/SDL_timer.h>
typedef Uint64 (SDLCALL *SDL_NSTimerCallback)(void *userdata, SDL_TimerID timerID, Uint64 interval);
userdata | an arbitrary pointer provided by the app through SDL_AddTimer, for its own use. |
timerID | the current timer being processed. |
interval | the current callback time interval. |
Returns the new callback time interval, or 0 to disable further runs of the callback.
The callback function is passed the current timer interval and returns the next timer interval, in nanoseconds. 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 canceled and will be removed.
SDL may call this callback at any time from a background thread; the application is responsible for locking resources the callback touches that need to be protected.
This datatype is available since SDL 3.1.3.