目次 - API(機能別) - イベント処理
イベント処理
インクルードファイル: SDL_events.h
概要
イベントを扱うとアプリケーションはユーザの入力を受け取ることができる.
イベントは以下のような呼び出しで初期化する(ビデオのみ).
SDL_Init(SDL_INIT_VIDEO);
(詳細は初期化と終了とSDL_Init()を参照すること.)
内部では, SDLは全ての未処理のイベントをキューに入れている.
通常はSDL_PollEvent()やSDL_PeepEvents()やSDL_WaitEvent()のような関数で未処理の入力イベントを監視し取り扱う.
イベントキューはSDL_Eventの列で構成されていて, その1つ1つが未処理のイベントである.
SDL_EventはSDL_PollEvent()でキューから取り出され, そこに格納された情報はアプリケーションで処理される.
関数
- SDL_AddEventWatch - イベントがキューに入った場合のコールバックを追加する
- SDL_DelEventWatch - SDL_AddEventWatch()で追加されたイベント監視コールバックを削除する
- SDL_EventFilter - SDL_AddEventWatch()で使用する関数の定義
- SDL_EventState - イベント処理の状態を種類ごとに設定する
- SDL_FilterEvents - 現在のイベントキューに対して指定のフィルタ関数を実行する
- SDL_FlushEvent - イベントキューからイベントを消去する
- SDL_FlushEvents - イベントキューから複数のイベントを消去する
- SDL_GetEventFilter - 現在のイベントフィルタを得る
- SDL_GetEventState - 指定したSDL_EventTypeイベントの有効/無効状態を戻すマクロ
- SDL_GetNumTouchDevices - 登録されたタッチデバイスの数を得る
- SDL_GetNumTouchFingers - 指定のタッチデバイスで使っている指の数を得る
- SDL_GetTouchDevice - 指定の番号のタッチデバイスのIDを得る
- SDL_GetTouchDeviceType - 指定のタッチデバイスの種類を得る
- SDL_GetTouchFinger - 指定のタッチデバイスIDの指番号の指オブジェクトを得る
- SDL_GetTouchName - タッチデバイス名を得る
- SDL_HasEvent - キューに指定のイベントが存在するか調査する
- SDL_HasEvents - キューに指定の範囲のイベントが存在するか調査する
- SDL_LoadDollarTemplates - 複雑なジェスチャーのテンプレートをファイルから読み込む
- SDL_PeepEvents - イベントキューのメッセージをチェックし, それらを戻す
- SDL_PollEvent - 未処理のイベントをキューから得る
- SDL_PumpEvents - 入力デバイスから吸い出したイベントをイベントループに加える
- SDL_PushEvent - イベントをキューに加える
- SDL_QuitRequested - SDL_QUITイベントがキューにあるか調査する
- SDL_RecordGesture - 指定または全てのタッチデバイスでジェスチャーの記録を開始する
- SDL_RegisterEvents - 複数のユーザ定義のイベントの領域を確保し, 先頭のイベントの番号を戻す
- SDL_SaveAllDollarTemplates - 現在の全てのジェスチャーのテンプレートを保存する
- SDL_SaveDollarTemplate - 現在のジェスチャーのテンプレートを保存する
- SDL_SetEventFilter - 内部状態が変わり内部キューに入る前に全てのイベントを処理するフィルタを設定する
- SDL_WaitEvent - 次のイベントが発生するまで無制限に待つ
- SDL_WaitEventTimeout - 次のイベントが発生するまで指定の時間(ミリ秒)待つ
型
- SDL_EventFilter
構造体
- SDL_AudioDeviceEvent - オーディオデバイスイベントの情報の構造体
- SDL_CommonEvent
- SDL_ControllerAxisEvent - ゲームコントローラー軸イベントの情報の構造体
- SDL_ControllerButtonEvent - コントローラーボタンイベントの情報の構造体
- SDL_ControllerDeviceEvent - ゲームコントローラー接続イベントの情報の構造体
- SDL_ControllerSensorEvent
- SDL_ControllerTouchpadEvent
- SDL_DisplayEvent - ディスプレイ状態変化イベントの情報の構造体
- SDL_DollarGestureEvent - 複雑なジェスチャーイベントの情報の構造体
- SDL_DropEvent - ドラッグ&ドロップイベントの情報の構造体
- SDL_Event - 異なる種類のイベントの情報を持つ共用体
- SDL_Finger - タッチの情報の構造体
- SDL_JoyAxisEvent - ジョイスティック軸イベントの情報の構造体
- SDL_JoyBallEvent - ジョイスティックボールイベントの情報の構造体
- SDL_JoyBatteryEvent
- SDL_JoyButtonEvent - ジョイスティックボタンイベントの情報の構造体
- SDL_JoyDeviceEvent - ジョイスティック接続イベントの構造体
- SDL_JoyHatEvent - ジョイスティックハットイベントの構造体
- SDL_KeyboardEvent - キーボードイベントの構造体
- SDL_MouseButtonEvent - マウスボタンイベントの構造体
- SDL_MouseMotionEvent - マウス移動イベントの構造体
- SDL_MouseWheelEvent - マウスホイールイベントの構造体
- SDL_MultiGestureEvent - マルチタッチジェスチャーイベントの情報の構造体
- SDL_QuitEvent - 終了要求イベントの情報の構造体
- SDL_SensorEvent - センサー更新情報の構造体
- SDL_SysWMEvent - システム依存ウィンドウイベントの情報の構造体
- SDL_TextEditingEvent - キーボードテキスト編集イベントの情報の構造体
- SDL_TextEditingExtEvent
- SDL_TextInputEvent - テキスト入力イベントの情報の構造体
- SDL_TouchFingerEvent - タッチイベントの情報の構造体
- SDL_UserEvent - アプリケーション定義イベントの情報の構造体
- SDL_WindowEvent - ウィンドウイベントの情報の構造体
列挙体
- SDL_DisplayEventID - ウィンドウイベントの列挙体
- SDL_EventType - 送られたイベントの種類の列挙体
- SDL_WindowEventID - ウィンドウイベントの列挙体
マクロ
- SDL_TEXTINPUTEVENT_TEXT_SIZE - SDL_TextInputEventで提供されるテキストの最大バイト数
SDL Wikiへのリンク
Event Handling - SDL Wiki