Python を使用して汎用 HID デバイスと通信しようとしています。
C で記述された HIDAPI ライブラリは libusb1.0 を凌駕し、シンプルで安定したクロスプラットフォーム HID 通信を実現することを読みました。ただし、Python スクリプト内から HIDAPI 関数を呼び出す方法を示すことを気にした人は誰もいません。それが私が問題を抱えているところです。
次のような本当に単純な C 関数を呼び出すのに十分な ctypes を理解しています。
int add(int n1, int n2) {
return n1 + n2;
}
問題は、HIDAPI 関数がより複雑であることです ( HIDAPI ヘッダー ファイル内):
struct hid_device_info HID_API_EXPORT * HID_API_CALL hid_enumerate(unsigned short vendor_id, unsigned short product_id);
この構造体を指します ( Mac ブランチ C ファイル内):
struct hid_device_info HID_API_EXPORT *hid_enumerate(unsigned short vendor_id, unsigned short product_id)
{
...
}
ここで、「...」は、「HID デバイスに関する情報を含む、タイプ struct #hid_device のリンクされたリストへのポインター」を返すことになる OS レベルのコード全体です。
ctypes やその他のツールを使用して、Python スクリプトでこのような関数を呼び出すにはどうすればよいでしょうか? このスタックオーバーフローのページが、同じ問題を解決したいと考えている他のすべての人々のガイドとして役立つことを願っています。詳細を教えてください。ありがとうございます。