main.cファイルに書かれている内容を紹介します。サンプルコードと見比べながらご覧ください。
#include省略 #include #ifndef __DebugSettin__ 省略 #endif // __DebugSettin__ mach_port_t masterPort = 0; IOReturn dealWithDevice(io_service_t usbDeviceRef) { 省略 } int main (void) { 省略 }
まず、#includeで宣言されているファイルはポートを開いたり、IOKitとやり取りするためのヘッダファイルです。CoreFoundationは基本的な文字列操作から始まり、Mac OS Xのさまざまな基礎データを扱うライブラリです。
次の#ifndef...#endifはデバッグ用のコンソールやシステム ログへの出力を切り替えるマクロです。
グローバル変数のmasterPortはポートを参照するオブジェクトです。
関数はdealWithDevice()とmain()の二つです。main()で作業の対象となるオブジェクト(USBのドライバ)を探し出し、dealWithDevice()で作業(USB バージョンの取得)をしています。今回はUSBのドライバを見つけ出してやり取りしていますが、通常はUSB装置やPCI拡張カードなどを探し出して、見つけた装置とやり取りします。
0 件のコメント:
コメントを投稿