typedef struct Action Action; enum Actions_Types { ACT_NULL, ACT_PIXELSCOLORS, }; struct action_pixcol { int x, y; /* Position */ unsigned int c; /* Color */ }; struct ActionPixelsColors { long int cnt; struct action_pixcol *pix; }; typedef union { struct ActionPixelsColors px; } ActUnion; struct Action { int type; ActUnion act; };