DragonFly On-Line Manual Pages
ALLEGRO_GET_EVENT_TYPE(3) ALLEGRO_GET_EVENT_TYPE(3)
NAME
ALLEGRO_GET_EVENT_TYPE - Allegro 5 API
SYNOPSIS
#include <allegro5/allegro.h>
#define ALLEGRO_GET_EVENT_TYPE(a, b, c, d) AL_ID(a, b, c, d)
DESCRIPTION
Make an event type identifier, which is a 32-bit integer. Usually, but
not necessarily, this will be made from four 8-bit character codes, for
example:
#define MY_EVENT_TYPE ALLEGRO_GET_EVENT_TYPE('M','I','N','E')
IDs less than 1024 are reserved for Allegro or its addons. Don't use
anything lower than ALLEGRO_GET_EVENT_TYPE(0, 0, 4, 0).
You should try to make your IDs unique so they don't clash with any 3rd
party code you may be using. Be creative. Numbering from 1024 is not
creative.
If you need multiple identifiers, you could define them like this:
#define BASE_EVENT ALLEGRO_GET_EVENT_TYPE('M','I','N','E')
#define BARK_EVENT (BASE_EVENT + 0)
#define MEOW_EVENT (BASE_EVENT + 1)
#define SQUAWK_EVENT (BASE_EVENT + 2)
/* Alternatively */
enum {
BARK_EVENT = ALLEGRO_GET_EVENT_TYPE('M','I','N','E'),
MEOW_EVENT,
SQUAWK_EVENT
};
SEE ALSO
ALLEGRO_EVENT(3), ALLEGRO_USER_EVENT(3), ALLEGRO_EVENT_TYPE_IS_USER(3)
Allegro reference manual ALLEGRO_GET_EVENT_TYPE(3)