Microsoft DirectX 8.0 (C++) |
バッファリング デバイスの情報を格納する。この構造体は、IDirectInputDevice8::GetDeviceData および IDirectInputDevice8::SendDeviceData メソッドで使用される。
typedef struct DIDEVICEOBJECTDATA { DWORD dwOfs; DWORD dwData; DWORD dwTimeStamp; DWORD dwSequence; UINT_PTR uAppData; } DIDEVICEOBJECTDATA, *LPDIDEVICEOBJECTDATA; typedef const DIDEVICEOBJECTDATA *LPCDIDEVICEOBJECTDATA;
アクション マッピングが使用中であれば、このメンバを無視できる。その代わりに、uAppData からアクション値を取得する。
SendDeviceData の場合、データの送信先であるオブジェクトのインスタンス ID。これは DIDEVICEOBJECTINSTANCE 構造体の dwType メンバから取得される。
軸からの入力の場合、デバイスが相対軸モードにあれば、相対軸の動きが報告される。デバイスが絶対軸モードにあれば、絶対座標が報告される。
ボタンからの入力の場合、dwData の下位バイトだけが有意である。下位バイトの上位ビットは、ボタンが押されたときに設定され、離されたときに消去される。
構造体が SendDeviceData メソッドと共に使用される場合、このメンバは必ずゼロになる。
構造体が SendDeviceData メソッドと共に使用される場合、このメンバは必ずゼロになる。
構造体が SendDeviceData メソッドと共に使用される場合、このメンバは必ずゼロになる。
dwTimeStamp が返すシステム時間は、Microsoft® Win32® の GetTickCount または timeGetTime 関数が使用するのと同じクロックに由来するものであるが、より精密な値を表すと考えられる。たとえば、Microsoft® Windows® 95 の場合、GetTickCount タイマの更新間隔は 55 ミリ秒だが、dwTimeStamp の値の誤差は 1 ミリ秒以内である。このため、GetTickCount を呼び出して n という値が返され、n + n1 というタイムスタンプを持つイベントを受け取る場合、そのイベントが GetTickCount を呼び出してからちょうど n1 ミリ秒後に発生した、と仮定することはできない。
Windows NT/2000 : Windows 2000 以降に対する再配布可能ファイルとして提供。
Windows 95/98 : Windows 95 以降に対する再配布可能ファイルとして提供。
ヘッダー : dinput.h で宣言。