table of contents
| ALLEGRO_USER_EVENT(3alleg5) | ALLEGRO_USER_EVENT(3alleg5) | 
NAME¶
ALLEGRO_USER_EVENT - Allegro 5 API
SYNOPSIS¶
- 
    
#include <allegro5/allegro.h> typedef struct ALLEGRO_USER_EVENT ALLEGRO_USER_EVENT; 
DESCRIPTION¶
An event structure that can be emitted by user event sources. These are the public fields:
- •
 - ALLEGRO_EVENT_SOURCE *source;
 - •
 - intptr_t data1;
 - •
 - intptr_t data2;
 - •
 - intptr_t data3;
 - •
 - intptr_t data4;
 
Like all other event types this structure is a part of the ALLEGRO_EVENT union. To access the fields in an ALLEGRO_EVENT variable ev, you would use:
- •
 - ev.user.source
 - •
 - ev.user.data1
 - •
 - ev.user.data2
 - •
 - ev.user.data3
 - •
 - ev.user.data4
 
To create a new user event you would do this:
- 
    
ALLEGRO_EVENT_SOURCE my_event_source; ALLEGRO_EVENT my_event; float some_var; al_init_user_event_source(&my_event_source); my_event.user.type = ALLEGRO_GET_EVENT_TYPE('M','I','N','E'); my_event.user.data1 = 1; my_event.user.data2 = &some_var; al_emit_user_event(&my_event_source, &my_event, NULL); 
Event type identifiers for user events are assigned by the user. Please see the documentation for ALLEGRO_GET_EVENT_TYPE(3alleg5) for the rules you should follow when assigning identifiers.
SEE ALSO¶
al_emit_user_event(3alleg5), ALLEGRO_GET_EVENT_TYPE(3alleg5), al_init_user_event_source(3alleg5)
| Allegro reference manual |