SDL2_gfx  1.0.2
Graphics primitives and surface functions for SDL2
Data Structures | Macros | Functions
/build/libsdl2-gfx-F3NxcE/libsdl2-gfx-1.0.4+dfsg/SDL2_framerate.h File Reference
#include "SDL.h"

Go to the source code of this file.

Data Structures

struct  FPSmanager
 Structure holding the state and timing information of the framerate controller. More...
 

Macros

#define FPS_UPPER_LIMIT   200
 Highest possible rate supported by framerate controller in Hz (1/s). More...
 
#define FPS_LOWER_LIMIT   1
 Lowest possible rate supported by framerate controller in Hz (1/s). More...
 
#define FPS_DEFAULT   30
 Default rate of framerate controller in Hz (1/s). More...
 
#define SDL2_FRAMERATE_SCOPE   extern
 

Functions

SDL2_FRAMERATE_SCOPE void SDL_initFramerate (FPSmanager *manager)
 Initialize the framerate manager. More...
 
SDL2_FRAMERATE_SCOPE int SDL_setFramerate (FPSmanager *manager, Uint32 rate)
 Set the framerate in Hz. More...
 
SDL2_FRAMERATE_SCOPE int SDL_getFramerate (FPSmanager *manager)
 Return the current target framerate in Hz. More...
 
SDL2_FRAMERATE_SCOPE int SDL_getFramecount (FPSmanager *manager)
 Return the current framecount. More...
 
SDL2_FRAMERATE_SCOPE Uint32 SDL_framerateDelay (FPSmanager *manager)
 Delay execution to maintain a constant framerate and calculate fps. More...
 

Macro Definition Documentation

◆ FPS_DEFAULT

#define FPS_DEFAULT   30

Default rate of framerate controller in Hz (1/s).

Definition at line 57 of file SDL2_framerate.h.

◆ FPS_LOWER_LIMIT

#define FPS_LOWER_LIMIT   1

Lowest possible rate supported by framerate controller in Hz (1/s).

Definition at line 52 of file SDL2_framerate.h.

◆ FPS_UPPER_LIMIT

#define FPS_UPPER_LIMIT   200

Highest possible rate supported by framerate controller in Hz (1/s).

Definition at line 47 of file SDL2_framerate.h.

◆ SDL2_FRAMERATE_SCOPE

#define SDL2_FRAMERATE_SCOPE   extern

Definition at line 82 of file SDL2_framerate.h.

Function Documentation

◆ SDL_framerateDelay()

SDL2_FRAMERATE_SCOPE Uint32 SDL_framerateDelay ( FPSmanager manager)

Delay execution to maintain a constant framerate and calculate fps.

Generate a delay to accomodate currently set framerate. Call once in the graphics/rendering loop. If the computer cannot keep up with the rate (i.e. drawing too slow), the delay is zero and the delay interpolation is reset.

Parameters
managerPointer to the framerate manager.
Returns
The time that passed since the last call to the function in ms. May return 0.

Definition at line 146 of file SDL2_framerate.c.

◆ SDL_getFramecount()

SDL2_FRAMERATE_SCOPE int SDL_getFramecount ( FPSmanager manager)

Return the current framecount.

Get the current framecount from the framerate manager. A frame is counted each time SDL_framerateDelay is called.

Parameters
managerPointer to the framerate manager.
Returns
Current frame count or -1 for error.

Definition at line 126 of file SDL2_framerate.c.

◆ SDL_getFramerate()

SDL2_FRAMERATE_SCOPE int SDL_getFramerate ( FPSmanager manager)

Return the current target framerate in Hz.

Get the currently set framerate of the manager.

Parameters
managerPointer to the framerate manager.
Returns
Current framerate in Hz or -1 for error.

Definition at line 107 of file SDL2_framerate.c.

◆ SDL_initFramerate()

SDL2_FRAMERATE_SCOPE void SDL_initFramerate ( FPSmanager manager)

Initialize the framerate manager.

Initialize the framerate manager, set default framerate of 30Hz and reset delay interpolation.

Parameters
managerPointer to the framerate manager.

Definition at line 62 of file SDL2_framerate.c.

◆ SDL_setFramerate()

SDL2_FRAMERATE_SCOPE int SDL_setFramerate ( FPSmanager manager,
Uint32  rate 
)

Set the framerate in Hz.

Sets a new framerate for the manager and reset delay interpolation. Rate values must be between FPS_LOWER_LIMIT and FPS_UPPER_LIMIT inclusive to be accepted.

Parameters
managerPointer to the framerate manager.
rateThe new framerate in Hz (frames per second).
Returns
0 for sucess and -1 for error.

Definition at line 86 of file SDL2_framerate.c.