Platform SDK: DirectX

DIDEVICEINSTANCE

DIDEVICEINSTANCE 構造体は、デバイスのインスタンスに関する情報を格納する。この構造体は、IDirectInput7::EnumDevices および IDirectInputDevice7::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 つ上位のバイトは、デバイス サブタイプを指定する。この値は、以下のタイプの 1 つと、それに対応するサブタイプ、およびオプションとして DIDEVTYPE_HID を組み合わせたものとなる。DIDEVTYPE_HID は、ヒューマン インターフェイス デバイスを指定する。
デバイス タイプ
DIDEVTYPE_MOUSE
マウスまたはマウス類似デバイス (トラックボールなど)。
DIDEVTYPE_KEYBOARD
キーボードまたはキーボード類似デバイス。
DIDEVTYPE_JOYSTICK
ジョイスティックまたは類似デバイス (ステアリング ホイールなど)。
DIDEVTYPE_DEVICE
上記のカテゴリに属さないデバイス。
マウス サブタイプ
DIDEVTYPEMOUSE_UNKNOWN
サブタイプは確定できない。
DIDEVTYPEMOUSE_TRADITIONAL
デバイスは、従来のマウスである。
DIDEVTYPEMOUSE_FINGERSTICK
デバイスは、フィンガースティックである。
DIDEVTYPEMOUSE_TOUCHPAD
デバイスは、タッチパッドである。
DIDEVTYPEMOUSE_TRACKBALL
デバイスは、トラックボールである。
キーボード サブタイプ
DIDEVTYPEKEYBOARD_UNKNOWN
サブタイプは確定できない。
DIDEVTYPEKEYBOARD_PCXT
IBM PC/XT 83 キー キーボード
DIDEVTYPEKEYBOARD_OLIVETTI
Olivetti 102 キー キーボード
DIDEVTYPEKEYBOARD_PCAT
IBM PC/AT 84 キー キーボード
DIDEVTYPEKEYBOARD_PCENH
IBM PC 拡張 101/102 キー式キーボードまたは Microsoft ナチュラル キーボード
DIDEVTYPEKEYBOARD_NOKIA1050
Nokia 1050 キーボード
DIDEVTYPEKEYBOARD_NOKIA9140
Nokia 9140 キーボード
DIDEVTYPEKEYBOARD_NEC98
日本語 NEC PC98 キーボード
DIDEVTYPEKEYBOARD_NEC98LAPTOP
日本語 NEC PC98 ラップトップ キーボード
DIDEVTYPEKEYBOARD_NEC98106
日本語 NEC PC98 106 キー キーボード
DIDEVTYPEKEYBOARD_JAPAN106
日本語 106 キー キーボード
DIDEVTYPEKEYBOARD_JAPANAX
日本語 AX キーボード
DIDEVTYPEKEYBOARD_J3100
日本語 J3100 キーボード
ジョイスティック サブタイプ
DIDEVTYPEJOYSTICK_UNKNOWN
サブタイプは確定できない。
DIDEVTYPEJOYSTICK_TRADITIONAL
従来のジョイスティック。
DIDEVTYPEJOYSTICK_FLIGHTSTICK
フライト シミュレーション用に最適化されているジョイスティック。
DIDEVTYPEJOYSTICK_GAMEPAD
主要目的がボタン入力を行うことにあるデバイス。
DIDEVTYPEJOYSTICK_RUDDER
偏揺制御用のデバイス。
DIDEVTYPEJOYSTICK_WHEEL
車のハンドル用のデバイス。
DIDEVTYPEJOYSTICK_HEADTRACKER
ユーザーの頭の動きを追跡するデバイス。

高位ワードのフラグ

DIDEVTYPE_HID
デバイスは、HID (Human Interface Device) プロトコルを使用する。
tszInstanceName[MAX_PATH]
インスタンスの登録名。たとえば、"Joystick 1"。
tszProductName[MAX_PATH]
製品の登録名。
guidFFDriver
フォース フィードバックに使用されるドライバの一意な識別子。この識別子は、ドライバのメーカーが定める。
wUsagePage
デバイスが HID デバイスであれば、このメンバには、HID 使用ページ コードが含まれる。
wUsage
デバイスが HID デバイスであれば、このメンバには、HID 使用コードが含まれる。

注意

以前のバージョンの DirectX と互換性を持たせるため、DIDEVICEINSTANCE 構造体の最初の 6 つのメンバだけを含む DIDEVICEINSTANCE_DX3 構造体も定義される。

動作環境

  Windows NT/2000 :Windows 2000 が必要。
  Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
  ヘッダー : dinput.h で宣言。