bool SDL_AddEventWatch(SDL_EventFilter filter, void *userdata);
SDL_EventFilter | filter | イベント発生時に呼ばれるSDL_EventFilter関数 |
void * | userdata | filter へ渡されるポインタ |
(bool) 成功のとき真, 失敗のとき偽を戻す. SDL_GetError()を呼んで詳細を知ることができる.
filter
はイベントが発生したとき呼ばれ, その戻り値は無視される.
注意: 別スレッドで動作する場合, イベントフィルタ関数で行うことには細心の注意を払うこと.
シグナル(例えばSIGINT)で終了イベントが発生した場合, まず内部キューを迂回してイベント監視コールバックに届けられ, そして次にイベントポーリングに届く.
メモ: コールバックはユーザのSDL_PushEvent()で発生させたイベントでも呼ばれる. しかし, 無効なイベントや, SDL_SetEventFilter()でコールバックフィルタを設定したイベントや, SDL_PeepEvents()でユーザが発生されたイベントの場合は呼ばれない.
この関数はスレッドセーフである.