Mac OSXのPythonでHIDを使う系の話の流れで、Python2.5+SWIG+libHIDUtilities.dylibを追っていたのだけど、ここに来て問題発覚。
SWIGってコールバック呼べないのね…コールバック関数の結果を変数として得ることはできるみたいだけど。HIDの入力イベントを通知とかはできないみたい。一応、フラグをずっと監視とかしたらできそうだけど。
しょうがないので、アプローチを変更。HID関係のメソッド名で検索をかけていたらpygletなるものを発見。クロスプラットフォームのマルチメディアライブラリ。OpenGLから動画の再生から色々できるらしい。日本語のドキュメントもあり。結構メジャーなのかな。
HID部分だけ引っ張り出して使えそうな雰囲気なので、これで試してみる。
ちなみにさっくりHIDのデバイスリストを列挙するテストをしてみた。
>>> import pyglet.input
>>> pyglet.input.get_devices()
[DarwinHIDDevice(name=Apple IR), DarwinHIDDevice(name=***)]
マーヴェラス。