Microsoft DirectX 8.0 (C++) |
Microsoft® DirectInput® システムを作成した後、次のサンプル コードに示すように、IDirectInput8::EnumDevices メソッドを呼び出してジョイスティックを列挙する。
// g_pDI は、IDirectInput8 への初期化済みのポインタである。 g_pDI->EnumDevices(DI8DEVCLASS_GAMECTRL, EnumJoysticksCallback, NULL, DIEDFL_ATTACHEDONLY)
定数 DI8DEVCLASS_GAMECTRL が最初のパラメータとして渡され、列挙するデバイスのクラスを指定する。
EnumJoysticksCallback は、ジョイスティックが見つかるたびに呼び出されるコールバック関数のアドレスである。「ステップ 2 : DirectInput ジョイスティック デバイスの作成」では、このアドレスで各デバイスを作成する。
第 3 パラメータは、コールバック関数が使用できる任意の 32 ビット値である。この場合は、何も送られない。
最後のパラメータの DIEDFL_ATTACHEDONLY は、列挙対象をコンピュータにアタッチされているデバイスに限定するフラグである。
ジョイスティックが列挙できたら、「ステップ 2 : DirectInput ジョイスティック デバイスの作成」に進む。