ALLEGRO_USER_EVENT(3) ALLEGRO_USER_EVENT(3) NAME ALLEGRO_USER_EVENT - Allegro 5 API SYNOPSIS #include 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: o ALLEGRO_EVENT_SOURCE *source; o intptr_t data1; o intptr_t data2; o intptr_t data3; o 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: o ev.user.source o ev.user.data1 o ev.user.data2 o ev.user.data3 o 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(3) for the rules you should follow when assigning identifiers. SEE ALSO al_emit_user_event(3), ALLEGRO_GET_EVENT_TYPE(3), al_init_user_event_source(3) Allegro reference manual ALLEGRO_USER_EVENT(3)