これは、使用可能なオペレーティング システム API とドライバーによって異なります。デバイスがコンピュータに接続されている場合、オペレーティング システムはそのソケットの 1 つに接続されているデバイスを検出できます (IRQ、ポーリングなどを使用)。その後、ドライバーまたは OS API (この種のデバイスをネイティブにサポートしている場合) を使用して、デバイスの状態を確認できます。これは通常、C++、C、またはアセンブリ言語などのより低レベルのプログラミング言語を使用して行われるため (javascript はいくつかの理由で適していません)、javascript API リファレンスを確認する必要があります (ブラウザ API、Win8 API、または何か他のもの)、関連する機能があるかどうかを確認します。
更新: あなたが送信した API リンクは、それについてかなり曖昧なようです。ただし、フードの下でローカルホストへの WebSocket 接続を確立することがわかりました。関数は実際には手続きです(Controller.connect()
何も返さない)。しかし、より便利なリンクを見つけました (開始: http://js.leapmotion.com/start )。次のようなさまざまなイベントの説明があります。
- deviceConnected - Leap デバイスが接続されました
- deviceDisconnected - Leap デバイスが切断されました
この場合、述語の代わりにコールバックを使用できます。
function doMyOwnStuff()
{
console.log( "O_o" );
}
var controller = new Leap.Controller();
controller.on('deviceConnected', function() {
console.log("A Leap device has been connected.");
doMyOwnStuff();
});
controller.on('deviceDisconnected', function() {
console.log("A Leap device has been disconnected.");
});
//should probably fire a 'deviceConnected'
controller.connect();
テストするハードウェアがないため、お役に立てば幸いです。