目次 - API(機能別) - イベント処理

イベント処理

インクルードファイル: SDL_events.h

概要

イベントを扱うとアプリケーションはユーザの入力を受け取ることができる. イベントは以下のような呼び出しで初期化する(ビデオのみ).

SDL_Init(SDL_INIT_VIDEO);

(詳細は初期化と終了SDL_Init()を参照すること.)

内部では, SDLは全ての未処理のイベントをキューに入れている. 通常はSDL_PollEvent()SDL_PeepEvents()SDL_WaitEvent()のような関数で未処理の入力イベントを監視し取り扱う.

イベントキューはSDL_Eventの列で構成されていて, その1つ1つが未処理のイベントである. SDL_EventSDL_PollEvent()でキューから取り出され, そこに格納された情報はアプリケーションで処理される.

関数

  1. SDL_AddEventWatch - イベントがキューに入った場合のコールバックを追加する
  2. SDL_DelEventWatch - SDL_AddEventWatch()で追加されたイベント監視コールバックを削除する
  3. SDL_EventFilter - SDL_AddEventWatch()で使用する関数の定義
  4. SDL_EventState - イベント処理の状態を種類ごとに設定する
  5. SDL_FilterEvents - 現在のイベントキューに対して指定のフィルタ関数を実行する
  6. SDL_FlushEvent - イベントキューからイベントを消去する
  7. SDL_FlushEvents - イベントキューから複数のイベントを消去する
  8. SDL_GetEventFilter - 現在のイベントフィルタを得る
  9. SDL_GetEventState - 指定したSDL_EventTypeイベントの有効/無効状態を戻すマクロ
  10. SDL_GetNumTouchDevices - 登録されたタッチデバイスの数を得る
  11. SDL_GetNumTouchFingers - 指定のタッチデバイスで使っている指の数を得る
  12. SDL_GetTouchDevice - 指定の番号のタッチデバイスのIDを得る
  13. SDL_GetTouchDeviceType - 指定のタッチデバイスの種類を得る
  14. SDL_GetTouchFinger - 指定のタッチデバイスIDの指番号の指オブジェクトを得る
  15. SDL_GetTouchName - タッチデバイス名を得る
  16. SDL_HasEvent - キューに指定のイベントが存在するか調査する
  17. SDL_HasEvents - キューに指定の範囲のイベントが存在するか調査する
  18. SDL_LoadDollarTemplates - 複雑なジェスチャーのテンプレートをファイルから読み込む
  19. SDL_PeepEvents - イベントキューのメッセージをチェックし, それらを戻す
  20. SDL_PollEvent - 未処理のイベントをキューから得る
  21. SDL_PumpEvents - 入力デバイスから吸い出したイベントをイベントループに加える
  22. SDL_PushEvent - イベントをキューに加える
  23. SDL_QuitRequested - SDL_QUITイベントがキューにあるか調査する
  24. SDL_RecordGesture - 指定または全てのタッチデバイスでジェスチャーの記録を開始する
  25. SDL_RegisterEvents - 複数のユーザ定義のイベントの領域を確保し, 先頭のイベントの番号を戻す
  26. SDL_SaveAllDollarTemplates - 現在の全てのジェスチャーのテンプレートを保存する
  27. SDL_SaveDollarTemplate - 現在のジェスチャーのテンプレートを保存する
  28. SDL_SetEventFilter - 内部状態が変わり内部キューに入る前に全てのイベントを処理するフィルタを設定する
  29. SDL_WaitEvent - 次のイベントが発生するまで無制限に待つ
  30. SDL_WaitEventTimeout - 次のイベントが発生するまで指定の時間(ミリ秒)待つ

  1. SDL_EventFilter

構造体

  1. SDL_AudioDeviceEvent - オーディオデバイスイベントの情報の構造体
  2. SDL_CommonEvent
  3. SDL_ControllerAxisEvent - ゲームコントローラー軸イベントの情報の構造体
  4. SDL_ControllerButtonEvent - コントローラーボタンイベントの情報の構造体
  5. SDL_ControllerDeviceEvent - ゲームコントローラー接続イベントの情報の構造体
  6. SDL_ControllerSensorEvent
  7. SDL_ControllerTouchpadEvent
  8. SDL_DisplayEvent - ディスプレイ状態変化イベントの情報の構造体
  9. SDL_DollarGestureEvent - 複雑なジェスチャーイベントの情報の構造体
  10. SDL_DropEvent - ドラッグ&ドロップイベントの情報の構造体
  11. SDL_Event - 異なる種類のイベントの情報を持つ共用体
  12. SDL_Finger - タッチの情報の構造体
  13. SDL_JoyAxisEvent - ジョイスティック軸イベントの情報の構造体
  14. SDL_JoyBallEvent - ジョイスティックボールイベントの情報の構造体
  15. SDL_JoyBatteryEvent
  16. SDL_JoyButtonEvent - ジョイスティックボタンイベントの情報の構造体
  17. SDL_JoyDeviceEvent - ジョイスティック接続イベントの構造体
  18. SDL_JoyHatEvent - ジョイスティックハットイベントの構造体
  19. SDL_KeyboardEvent - キーボードイベントの構造体
  20. SDL_MouseButtonEvent - マウスボタンイベントの構造体
  21. SDL_MouseMotionEvent - マウス移動イベントの構造体
  22. SDL_MouseWheelEvent - マウスホイールイベントの構造体
  23. SDL_MultiGestureEvent - マルチタッチジェスチャーイベントの情報の構造体
  24. SDL_QuitEvent - 終了要求イベントの情報の構造体
  25. SDL_SensorEvent - センサー更新情報の構造体
  26. SDL_SysWMEvent - システム依存ウィンドウイベントの情報の構造体
  27. SDL_TextEditingEvent - キーボードテキスト編集イベントの情報の構造体
  28. SDL_TextEditingExtEvent
  29. SDL_TextInputEvent - テキスト入力イベントの情報の構造体
  30. SDL_TouchFingerEvent - タッチイベントの情報の構造体
  31. SDL_UserEvent - アプリケーション定義イベントの情報の構造体
  32. SDL_WindowEvent - ウィンドウイベントの情報の構造体

列挙体

  1. SDL_DisplayEventID - ウィンドウイベントの列挙体
  2. SDL_EventType - 送られたイベントの種類の列挙体
  3. SDL_WindowEventID - ウィンドウイベントの列挙体

マクロ

  1. SDL_TEXTINPUTEVENT_TEXT_SIZE - SDL_TextInputEventで提供されるテキストの最大バイト数

SDL Wikiへのリンク

Event Handling - SDL Wiki