DIDEVICEINSTANCE 構造体
DIDEVICEINSTANCE 構造体
Microsoft® DirectInput® デバイスのインスタンスを表す。この構造体は、IDirectInput8::EnumDevices、IDirectInput8::EnumDevicesBySemantics、および IDirectInputDevice8::GetDeviceInfo メソッドで使う。
構文
typedef struct DIDEVICEINSTANCE {
DWORD dwSize;
GUID guidInstance;
GUID guidProduct;
DWORD dwDevType;
TCHAR tszInstanceName[MAX_PATH];
TCHAR tszProductName[MAX_PATH];
GUID guidFFDriver;
WORD wUsagePage;
WORD wUsage;
} DIDEVICEINSTANCE, *LPDIDEVICEINSTANCE;
typedef const DIDEVICEINSTANCE *LPCDIDEVICEINSTANCE;
メンバ
- dwSize
この構造体のサイズ (バイト単位)。このメンバは、構造体が使われる前に初期化されなければならない。 - guidInstance
デバイスのインスタンスに対する一意な識別子。アプリケーションは、このインスタンス グローバル一意識別子 (GUID) を構成ファイルに保存し、後で使うこともできる。インスタンス GUID は、コンピュータごとに固有である。1 つのコンピュータから取得されるインスタンス GUID は、他のコンピュータ上のインスタンス GUID とは無関係である。 - guidProduct
製品の一意な識別子。この識別子は、デバイス メーカーが設定する。 - dwDevType
デバイス タイプ指定子。デバイス タイプ記述コードの最下位バイトは、デバイス タイプを指定する。最下位バイトから 1 つ上位のバイトは、デバイス サブタイプを指定する。この値は、HID (Human Interface Device) を指定する DIDEVTYPE_HID と組み合わせることもできる。 - tszInstanceName
インスタンスの登録名。たとえば、"Joystick 1"。 - tszProductName
製品の登録名。 - guidFFDriver
フォース フィードバックに使われるドライバの一意な識別子。ドライバのメーカーがこの識別子を設定する。 - wUsagePage
デバイスが HID (Human Interface Device) デバイスである場合、このメンバには、HID 使用ページ コードが含まれる。 - wUsage
デバイスが HID (Human Interface Device) デバイスである場合、このメンバには、HID 使用コードが含まれる。
注意
dwDevType メンバで使えるように、次のデバイス タイプとサブタイプが定義されている。
DI8DEVTYPE_1STPERSON
一人称型のアクション ゲーム デバイス。次のサブタイプが定義される。
DI8DEVTYPE1STPERSON_LIMITED
アクション マップ対象のデバイス オブジェクトの最小数を指定しないデバイス。
DI8DEVTYPE1STPERSON_SHOOTER
一人称型のシューティング ゲーム用に設計されたデバイス。
DI8DEVTYPE1STPERSON_SIXDOF
6 段階 (3 つの横方向軸と 3 つの回転軸) の自由を備えたデバイス。
DI8DEVTYPE1STPERSON_UNKNOWN
不明なサブタイプ。
DI8DEVTYPE_DEVICE
別のカテゴリに分類されないデバイス。
DI8DEVTYPE_DEVICECTRL
アプリケーションのコンテキストから別タイプのデバイスの制御に使われる入力デバイス。次のサブタイプが定義される。
DI8DEVTYPEDEVICECTRL_COMMSSELECTION
通信の選択に使われるコントロール。
DI8DEVTYPEDEVICECTRL_COMMSSELECTION_HARDWIRED
デフォルトの構成を使う必要があり、マッピングを変更できないデバイス。
DI8DEVTYPEDEVICECTRL_UNKNOWN
不明なサブタイプ。
DI8DEVTYPE_DRIVING
ステアリング用デバイス。次のサブタイプが定義される。
DI8DEVTYPEDRIVING_COMBINEDPEDALS
単一の軸からアクセルとブレーキ ペダルの値を報告するステアリング デバイス。
DI8DEVTYPEDRIVING_DUALPEDALS
別々の軸からアクセルとブレーキ ペダルの値を報告するステアリング デバイス。
DI8DEVTYPEDRIVING_HANDHELD
ハンドヘルドのステアリング デバイス。
DI8DEVTYPEDRIVING_LIMITED
アクション マップ対象のデバイス オブジェクトの最小数を指定しないステアリング デバイス。
DI8DEVTYPEDRIVING_THREEPEDALS
別々の軸からアクセル、ブレーキ、およびクラッチ ペダルの値を報告するステアリング デバイス。
DI8DEVTYPE_FLIGHT
フライト シミュレーション用コントローラ。次のサブタイプが定義される。
DI8DEVTYPEFLIGHT_LIMITED
アクション マップ対象のデバイス オブジェクトの最小数を指定しないフライト コントローラ。
DI8DEVTYPEFLIGHT_RC
模型飛行機のリモート コントロールに基づくフライト デバイス。
DI8DEVTYPEFLIGHT_STICK
ジョイスティック。
DI8DEVTYPEFLIGHT_YOKE
操縦輪。
DI8DEVTYPE_GAMEPAD
ゲームパッド。次のサブタイプが定義される。
DI8DEVTYPEGAMEPAD_LIMITED
アクション マップ対象のデバイス オブジェクトの最小数を指定しないゲームパッド。
DI8DEVTYPEGAMEPAD_STANDARD
アクション マップ対象のデバイス オブジェクトの最小数を指定しない標準ゲームパッド。
DI8DEVTYPEGAMEPAD_TILT
コントローラの姿勢から x 軸と y 軸のデータを報告するゲームパッド。
DI8DEVTYPE_JOYSTICK
ジョイスティック。次のサブタイプが定義される。
DI8DEVTYPEJOYSTICK_LIMITED
アクション マップ対象のデバイス オブジェクトの最小数を指定しないジョイスティック。
DI8DEVTYPEJOYSTICK_STANDARD
アクション マップ対象のデバイス オブジェクトの最小数を指定する標準ジョイスティック。
DI8DEVTYPE_KEYBOARD
キーボードまたはキーボード類似デバイス。次のサブタイプが定義される。
DI8DEVTYPEKEYBOARD_UNKNOWN
サブタイプは確定できない。
DI8DEVTYPEKEYBOARD_PCXT
IBM PC/XT 83 キー キーボード。
DI8DEVTYPEKEYBOARD_OLIVETTI
Olivetti 102 キー キーボード。
DI8DEVTYPEKEYBOARD_PCAT
IBM PC/AT 84 キー キーボード。
DI8DEVTYPEKEYBOARD_PCENH
IBM PC 拡張 101/102 キー式キーボードまたは Microsoft Natural® keyboard キーボード。
DI8DEVTYPEKEYBOARD_NOKIA1050
Nokia 1050 キーボード。
DI8DEVTYPEKEYBOARD_NOKIA9140
Nokia 9140 キーボード。
DI8DEVTYPEKEYBOARD_NEC98
日本語 NEC PC98 キーボード。
DI8DEVTYPEKEYBOARD_NEC98LAPTOP
日本語 NEC PC98 ラップトップ キーボード。
DI8DEVTYPEKEYBOARD_NEC98106
日本語 NEC PC98 106 キー キーボード。
DI8DEVTYPEKEYBOARD_JAPAN106
日本語 106 キー キーボード。
DI8DEVTYPEKEYBOARD_JAPANAX
日本語 AX キーボード。
DI8DEVTYPEKEYBOARD_J3100
日本語 J3100 キーボード。
DI8DEVTYPE_MOUSE
マウスまたはマウス類似デバイス (トラックボールなど)。次のサブタイプが定義される。
DI8DEVTYPEMOUSE_ABSOLUTE
絶対軸データを返すマウス。
DI8DEVTYPEMOUSE_FINGERSTICK
フィンガースティック。
DI8DEVTYPEMOUSE_TOUCHPAD
タッチパッド。
DI8DEVTYPEMOUSE_TRACKBALL
トラックボール。
DI8DEVTYPEMOUSE_TRADITIONAL
従来型マウス。
DI8DEVTYPEMOUSE_UNKNOWN
サブタイプは確定できない。
DI8DEVTYPE_REMOTE
リモート コントロール デバイス。次のサブタイプが定義される。
DI8DEVTYPEREMOTE_UNKNOWN
サブタイプは確定できない。
DI8DEVTYPE_SCREENPOINTER
スクリーン ポインタ。次のサブタイプが定義される。
DI8DEVTYPESCREENPTR_UNKNOWN
不明なサブタイプ。
DI8DEVTYPESCREENPTR_LIGHTGUN
ライト ガン。
DI8DEVTYPESCREENPTR_LIGHTPEN
ライト ペン。
DI8DEVTYPESCREENPTR_TOUCH
タッチ スクリーン。
DI8DEVTYPE_SUPPLEMENTAL
ホイールと共に使うペダルなど、アプリケーションのメイン コントロールに適さない機能を備えた特殊デバイス。次のサブタイプが定義される。
DI8DEVTYPESUPPLEMENTAL_2NDHANDCONTROLLER
2 次的ハンドヘルド コントローラ。
DI8DEVTYPESUPPLEMENTAL_COMBINEDPEDALS
主機能として、単一の軸からアクセルとブレーキ ペダルの値を報告するデバイス。
DI8DEVTYPESUPPLEMENTAL_DUALPEDALS
主機能として、別々の軸からアクセルとブレーキ ペダルの値を報告するデバイス。
DI8DEVTYPESUPPLEMENTAL_HANDTRACKER
手の移動を追跡するデバイス。
DI8DEVTYPESUPPLEMENTAL_HEADTRACKER
頭の移動を追跡するデバイス。
DI8DEVTYPESUPPLEMENTAL_RUDDERPEDALS
方向舵ペダルを備えたデバイス。
DI8DEVTYPESUPPLEMENTAL_SHIFTER
軸からギア選択を報告するデバイス。
DI8DEVTYPESUPPLEMENTAL_SHIFTSTICKGATE
ボタン状態からギア選択を報告するデバイス。
DI8DEVTYPESUPPLEMENTAL_SPLITTHROTTLE
主機能として、2 つ以上のスロットル値を報告するデバイス。その他のコントロールを持つ場合がある。
DI8DEVTYPESUPPLEMENTAL_THREEPEDALS
主機能として、別々の軸からアクセル、ブレーキ、およびクラッチ ペダルの値を報告するデバイス。
DI8DEVTYPESUPPLEMENTAL_THROTTLE
主機能として、単一のスロットル値を報告するデバイス。その他のコントロールを持つ場合がある。
DI8DEVTYPESUPPLEMENTAL_UNKNOWN
不明なサブタイプ。
Microsoft DirectX® 8.0 より前のバージョンの DirectInput では、デバイス タイプとサブタイプの構成が一部異なる。Dinput.h の DIDEVTYPExxx 定義を参照すること。
構造体の情報
ヘッダー | dinput.h |
最低限のオペレーティング システム | Windows 98 |