< 前へ | 次へ >

レッスン 5: topicStruct のドメイン参加者を追加する

ドメイン参加者とは、コンポーネントに Data Distribution Service for Real-Time Systems (DDS) に関連した要素が含まれることを示すコンポーネント要素です。 このレッスンでは、MyTopicStruct topicStruct 要素の定義に基づいて IDL ファイルを生成します。次に、このファイル用のコードを生成し、IDL ファイルから抽出された関数を格納するライブラリーを作成します。このライブラリーは、MyTopicStruct topicStruct 要素に基づいたデータを共有する可能性のある将来のアプリケーションで使用できます。
  1. TopicsPkg パッケージを右クリックし、「新規追加」 > 「DDS」 > 「domainParticipant」と選択します。
  2. ドメイン参加者要素の「フィーチャー」ウィンドウを開き、以下のように情報を入力します。
    1. 「一般」タブで、以下のように情報を入力します。
      1. ドメイン参加者要素を MyTopicStructLib と命名します。
      2. 「ディレクトリー」フィールドで、MyTopicStructLib と入力します。
      3. 「タイプ」域で、「ライブラリー」を選択します。
    2. 「スコープ」タブで、「TopicsPkg」を選択してから、「OK」をクリックします。
  3. 以下の手順でターゲット環境を設定します。
    1. MyTopicStructLib ドメイン参加者の下の「構成」カテゴリーで、DefaultConfig 構成の「フィーチャー」ウィンドウを開きます。
    2. 「設定」タブで、「MSVC9」または「Linux」環境を選択し、「OK」をクリックします。
  4. コードを生成します。そのためには「コード」 > 「生成」 > 「DefaultConfig」と選択します。ディレクトリーを作成するかどうかを尋ねられたら、「はい」をクリックします。 生成されるファイルの 1 つに DDSMyTopicStructLib.idl があります。 このファイルを表示するには、ブラウザーで MyTopicStruct topicStruct を右クリックして、「トピック構造体の編集」を選択します。
  5. 前のステップで「トピック構造体の編集」を選択した場合、ブラウザーでクリックしてから、次のステップに続けてください。
  6. RTI DDS 実装を使用している場合は、アプリケーションのビルド前に、RTI インストール・プロセスで ndds.4.5d という名前のディレクトリーを示す NDDSHOME という名前の環境変数が作成されたことを確認します。(Rational® Rhapsody®によって生成された Make ファイルでは、この変数を使用して必要なヘッダー・ファイルを見つけます。)
  7. ライブラリーをビルドします。そのためには「コード」 > 「ビルド」 > 「MyTopicStrucLib.lib のビルド」と選択します。 ビルド・プロセスの一部として、DDSMyTopicStructLib.idl ファイルからソース・ファイルの IDL 生成が行われます。 こうしたファイルにより、将来、MyTopicStruct topicStruct 要素を登録したり、dataWriters および dataReaders を定義したりできます。
    注: RTI DDS 実装を使用していて、ビルド・プロセスの実行中に「rtiddsgen は内部または外部コマンドとして認識されません」というメッセージが表示された場合、 RTI インストール・プロセスで rtiddsgen.bat を含むディレクトリーが PATH 環境変数に追加されなかったということです。rtiddsgen.bat を含むディレクトリーを PATH 変数に追加して、ビルド・コマンドを再度実行してください。
  8. このチュートリアルの目的に合わせて、「コンポーネント」カテゴリーで DefaultComponent 要素をプロジェクトから削除します。そのためには、「DefaultComponent」を右クリックして、「モデルからの削除」を選択します (下図に示すとおりです)。削除を確認します。

レッスンのチェックポイント

このレッスンでは、MyTopicStruct topicStruct 要素のドメイン参加者を作成する方法について学習しました。
次のレッスンでは、パブリッシャーおよび dataWriter エンティティーを作成します。
< 前へ | 次へ >

フィードバック