Win32 API 日本語リファレンス
ホームUI.Input.GameInput › IGameInputRawDeviceReport

IGameInputRawDeviceReport

COM
IID61f08cf1-1ffc-40ca-a2b8-e1ab8bc5b6dc継承元IUnknown自前メソッド開始 vtbl3

メソッド 9

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 void GetDevice(IGameInputDevice** device)
deviceIGameInputDevice**outこのレポートが属するデバイス(IGameInputDevice)を受け取る。
vtbl 4 GameInputRawDeviceReportInfo* GetReportInfo()
vtbl 5 UINT_PTR GetRawDataSize()
vtbl 6 UINT_PTR GetRawData(UINT_PTR bufferSize, void* buffer)
bufferSizeUINT_PTRinbuffer のサイズ(バイト数)を指定する。
buffervoid*outレポートの生データを受け取るバッファへのポインタである。
vtbl 7 BOOLEAN SetRawData(UINT_PTR bufferSize, void* buffer)
bufferSizeUINT_PTRinbuffer のサイズ(バイト数)を指定する。
buffervoid*inレポートに設定する生データへのポインタである。
vtbl 8 BOOLEAN GetItemValue(DWORD itemIndex, LONGLONG* value)
itemIndexDWORDin対象とするレポート項目のインデックスを指定する。
valueLONGLONG*out取得した項目の値を受け取る。
vtbl 9 BOOLEAN SetItemValue(DWORD itemIndex, LONGLONG value)
itemIndexDWORDin対象とするレポート項目のインデックスを指定する。
valueLONGLONGin設定する項目の値を指定する。
vtbl 10 BOOLEAN ResetItemValue(DWORD itemIndex)
itemIndexDWORDin既定値に戻す対象レポート項目のインデックスを指定する。
vtbl 11 BOOLEAN ResetAllItems()

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IGameInputRawDeviceReport "{61F08CF1-1FFC-40CA-A2B8-E1AB8BC5B6DC}"
#usecom global IGameInputRawDeviceReport IID_IGameInputRawDeviceReport "{}"
#comfunc global IGameInputRawDeviceReport_GetDevice       3 sptr
#comfunc global IGameInputRawDeviceReport_GetReportInfo   4
#comfunc global IGameInputRawDeviceReport_GetRawDataSize  5
#comfunc global IGameInputRawDeviceReport_GetRawData      6 sptr,sptr
#comfunc global IGameInputRawDeviceReport_SetRawData      7 sptr,sptr
#comfunc global IGameInputRawDeviceReport_GetItemValue    8 int,var
#comfunc global IGameInputRawDeviceReport_SetItemValue    9 int,int64
#comfunc global IGameInputRawDeviceReport_ResetItemValue  10 int
#comfunc global IGameInputRawDeviceReport_ResetAllItems   11
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。