トップ 一覧 検索 ヘルプ RSS ログイン

Palm OS Programmer's Companion Volume II/4-1の変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
[[↑4 章トップへ|Palm OS Programmer's Companion Volume II/4]] [[2 節に進む →|Palm OS Programmer's Companion Volume II/4-2]]
----
!!! 4-1 赤外線ライブラリ
 
赤外線( IR:InfraRed )ライブラリは、Palm OS が赤外線通信を行なうための直接的なインターフェイスを提供する共有ライブラリです。Exchange マネージャが提供するよりも直接的なアクセスをしたいアプリケーションのためにデザインされています。
Palm OS によって提供される赤外線サポートは、IrDA 仕様に準拠しています。IrDA(Infrared Data Association:赤外線データ通信)は、IR 開発に含まれる多くの企業の代表で構成される、工業的な母体です。IrDA の Web サイト( http://www.IrDA.org/ )で IrDA 標準について紹介しています。

!!IrDA スタック
IrDA スタックは多くのプロトコル層から成り立っています。必須のプロトコル層もあれば、オプションのものもあります。完全なスタックは、図 4.1 のようになります。
'''図 4.1  IrDA プロトコルスタック'''
{{img IrDAStackProtocol.gif}}
SIR/FIR 層は純粋なハードウェアです。SIR( Serial IR:シリアル赤外線)層は 115kbps 以上のスピードをサポートしています。一方 FIR( Fast IR:高速赤外線)層は4Mbps 以上のスピードをサポートしています。IrLAP は、IrDA デバイス間のデータパイプを提供する IR リンクアクセスプロトコルです。IrLMP( IR Link Management Protocol:赤外線リンク管理プロトコル)は、IrLAP を使用した多重セッションを管理します。Tiny TP は、高レベルの IrDA 層における軽量転送プロトコルです。
一つ以上の SIR/FIR が実装されているはずです。また、Tiny TP/IrLMP/IrLAP も実装されているはずです。IrComm は赤外線接続におけるシリアルおよびパラレルポートのエミュレーションを提供します。また、IrComm はオプションで、現時点では Palm OS ではサポートされていません。IrLAN はローカルエリアネットワーク( LAN )プロトコルアダプタへのアクセスポイントを提供します。これもオプションで、Palm OS ではサポートされていません。
OBEX はオブジェクト交換プロトコル( OBject EXchange protocol )です。デバイス間で名刺やカレンダーなどのオブジェクトを転送するのに使用されます。これもオプションですが、Palm OS でサポートされています。OBEX の能力は Exchange マネージャを通して利用できます。直後の API は存在しません。
OBEX と同様に、Palm OS は Exchange マネージャのサポートに必要なプロトコル層( SIR, IrLAP, IrLMP, Tiny TP )の全てを実装しています。Palm III{{sup TM}} デバイスには SIR( Serial IR:シリアル赤外線)ハードウェアが付いており、2400、9600、19200、38400、57600、115200 bps のスピードがサポートされています。ソフトウェア( {{span style='color:blue;font-family:monospace;',IrOpen}} )は現時点ではデフォルトで 57600 bps の帯域に限定されますが、必要であれば 115200 bps 以上の接続速度を指定することができます。
スタックは接続ベースまたは無接続なセッションを利用できます。
IrLMP 情報アクセスサービス( Information Access Service :IAS )は IrLMP プロトコルのコンポーネントです。それはインターフェイスで言及されるでしょう。IAS は、自身に関する情報を登録できるデバイスを通してデータベースサービスを提供します。また、他のデバイスやそれらデバイスが提供するサービスについての情報を検索します。

!!赤外線ライブラリへのアクセス
赤外線ライブラリを使用する前に、以下のように {{span style='color:blue;font-family:monospace;',SysLibFind}} 関数をコールしてライブラリへの参照値を得る必要があります。
	err = SysLibFind(irLibName, &refNum);
	err = SysLibFind(irLibName, &refNum);
この関数は {{span style='color:blue;font-family:monospace;',refNum}} パラメータ内にライブラリへの参照値を返します。このパラメータは、赤外線ライブラリ内のほとんどの関数に渡されます。
 
----
[[↑4 章トップへ|Palm OS Programmer's Companion Volume II/4]] [[2 節に進む →|Palm OS Programmer's Companion Volume II/4-2]]