ALLEGRO_STATE - Allegro 5 API
-
typedef struct ALLEGRO_STATE ALLEGRO_STATE;
Opaque type which is passed to
al_store_state(3alleg5)/al_restore_state(3alleg5).
The various state kept internally by Allegro can be displayed like this:
-
global
active system driver
current config
per thread
new bitmap params
new display params
active file interface
errno
current blending mode
current display
deferred drawing
current target bitmap
current transformation
current projection transformation
current clipping rectangle
bitmap locking
current shader
In general, the only real global state is the active system driver. All other
global state is per-thread, so if your application has multiple separate
threads they never will interfere with each other. (Except if there are
objects accessed by multiple threads of course. Usually you want to minimize
that though and for the remaining cases use synchronization primitives
described in the threads section or events described in the events section to
control inter-thread communication.)