著作一覧 |
作ってしばらく遊んで、なんか忙しくなって放置していたGainerXを思い出したので、レポジトリを公開しておくことにしたり(releaseディレクトリの下にビルド済みocxも置いてある)。
vb6ディレクトリに、VB6のフォームに貼り付けて操作したりイベント受けたりするサンプルが置いてあるけど、GainerX自体はどこまで実装したか忘れちゃった。
確か、元のGainerのJavaのアプリケーションレベルドライバがぽこぽこ取りこぼすのに不快になってC++でアプリケーションレベルドライバを作ったはず。だから、相当、細かい解像度で入出力ができたような記憶はあるんだけど。
GainerXは、VC++2008のネイティブC++プログラムで、WaitCommEventと、MsgWaitForMultipleObjectsを使ってイベントドリブンなIOを専用スレッドで実行するようにしている。
メインスレッドのCOMコンポーネントとの通信にはCOMマーシャラではなく、Windowsメッセージを利用して最少のオーバーヘッドで実現とか、そんな感じ。
とか、書いていてふと気づいて検索すると、2008年7月で既に公開していた。というか、RubyKaigi2008でごとけんさんにおもしろいから遊べとそそのかされたわけだから、すぐに作ったみたいだ。
+GAINER―PHYSICAL COMPUTING WITH GAINER(GainerBook Labo + くるくる研究室)
ジェズイットを見習え |