やっとHIDなデバイスからWM_INPUTの情報を全部取得できるようになった><お手本にしたサイトのやり方はあくまでタッチパッドの座標とかに特化したやり方であって、ボタンとかの情報も取得しようとするとやり方がだいぶ違うっぽい><
RawInputAPIでのUSB HIDのイベント解析の仕方>< もっと見る
簡単に言うと、HidP_GetCapsとHidP_GetValueCaps(座標とか用)とHidP_GetButtonCapsとHidP_GetUsages(ボタンとか用)を使って『UsagePageとUsage』の『DataIndex』への対応を調べて、HidP_GetDataで、ちゃんと区切られたデータを得て、区切られたデータはDataIndexとRawValueのペアなので、さっき調べたUsagePageとUsageとの対応を調べて、それが何の数値なのかわかる感じ><
複数のデータで成り立つもの(例えばX座標とY座標)とか同じものが複数あって区別する必要があるもの(タッチパッドなら指ごとのデータとか)は、LinkCollectionっていう値を同じにする事でまとめて、フォルダみたいな扱い(ディレクトリ構造)になってる><(規格上はツリー状になるらしいけどタッチパッドの場合は孫まではなかった(?)のでそこまでは解析してない・・・><)
思考の /dev/null
RawInputAPIでのUSB HIDのイベント解析の仕方><
簡単に言うと、
HidP_GetCapsとHidP_GetValueCaps(座標とか用)とHidP_GetButtonCapsとHidP_GetUsages(ボタンとか用)を使って『UsagePageとUsage』の『DataIndex』への対応を調べて、
HidP_GetDataで、ちゃんと区切られたデータを得て、
区切られたデータはDataIndexとRawValueのペアなので、さっき調べたUsagePageとUsageとの対応を調べて、それが何の数値なのかわかる感じ><
複数のデータで成り立つもの(例えばX座標とY座標)とか同じものが複数あって区別する必要があるもの(タッチパッドなら指ごとのデータとか)は、LinkCollectionっていう値を同じにする事でまとめて、フォルダみたいな扱い(ディレクトリ構造)になってる><(規格上はツリー状になるらしいけどタッチパッドの場合は孫まではなかった(?)のでそこまでは解析してない・・・><)