Uint32 | type | SDL_RegisterEvents()で得られた値 |
Uint32 | timestamp | イベントのタイムスタンプ |
Uint32 | windowID | フォーカスのあるウィンドウ (可能なら) |
Sint32 | code | ユーザ定義のイベントコード |
void* | data1 | ユーザ定義の情報へのポインタ |
void* | data2 | ユーザ定義の情報へのポインタ |
Sint32 my_event_code;
void *significant_data;
Uint32 myEventType = SDL_RegisterEvents(1);
if (myEventType != ((Uint32)-1)) {
SDL_Event event;
SDL_memset(&event, 0, sizeof(event)); /* または SDL_zero(event); */
event.type = myEventType;
event.user.code = my_event_code;
event.user.data1 = significant_data;
event.user.data2 = 0;
SDL_PushEvent(&event);
}
SDL_UserEventはSDL_Eventのメンバである. このイベントは特殊で, SDLによって発生されることは決してなく, ユーザによってのみ発生される. イベントはSDL_PushEvent()でキューに入れることができる. 構造体の情報は完全に作成者が設定できる. 唯一要求されるのは, SDL_RegisterEvents()で得たtypeの値である.