RTCBuilderは、OpenRTM-aist に含まれる開発ツールの1つであり、RTCのプロファイル情報から、RTCのソースコードのひな型を生成することができます。C++、Python、Javaなどのプログラム言語に対応しています。また、Eclipse 統合開発環境のプラグインとして作成されており、 Eclipse 上にて既存のプラグインとシームレスに操作を行うことができます。
RTCBuilder の動作に必要な環境は以下のとおりです。
№ | 環境 | 備考 |
1 | Java Development Kit 6 | 注意:Java1.5(5.0)では動作しません。 |
2 | Eclipse 3.4.2以上 http://www.eclipse.org/downloads/index.php http://archive.eclipse.org/eclipse/downloads/index.php |
Eclipse本体 |
3 | Eclipse EMF 2.2以上(SDO,XSD含む) | RTCBuilderが依存するEclipseプラグイン ※ご使用になられるEclipseのバージョンに合ったものをご使用ください。 |
4 | Eclipse GEF 3.2以上(Draw2D含む) | RTCBuilderが依存する Eclipse プラグイン ※ご使用になられる Eclipse のバージョンに合ったものをご使用ください。 |
5 | Eclipse Java development tools(JDT) | ※ご使用になられる Eclipse のバージョンに合ったものをご使用ください。 |
また以下の開発を行う言語によっては以下の環境をインストールしておくと便利です。
№ | 環境 | 備考 |
1 | Eclipse CDT | C++用の開発環境 |
2 | Pydev for Eclipse | python用の開発環境 |
RTCBuilder は、OpenRTM-aist を対象に開発されたものです。その他の RTC プラットフォームに対する動作は想定しておりません。
インストール後、Eclipseを初めて起動すると、以下のようなWelcomeページが表示されます。
このWelcomeページを左上の「X」により閉じると以下のページが表示されます。
右上の「Open Perspective」ボタンを押下し、プルダウンの「その他(O)…」ボタンを押下します。
「RTC Builder」を選択することで、RTCBuilderが起動します。
まず最初に、RT コンポーネントを作成するための Eclipse プロジェクトを作成します。 画面上部のメニューから[ファイル]-[新規]-[プロジェクト]を選択します。
表示された「新規プロジェクト」画面において、「その他」-「 RTC ビルダ」を選択し、「次へ」をクリックします。
「プロジェクト名」欄に作成するプロジェクト名を入力して「終了」をクリックします。
指定した名称のプロジェクトが生成され、パッケージエクスプローラ内に追加されます。
生成したプロジェクト内には、デフォルト値が設定された RTC プロファイル XML(RTC.xml) が自動的に生成されます。
RTC プロファイルエディタを開くには、ツールバーの「 Open New RtcBuilder Editor 」ボタンを押下するか、メニューバーの [ファイル]-[Open New Builder Editor] を選択します。
ここでは、 RT プロファイルエディタについて説明します。
RTプロファイルエディタは、以下のページから構成されています。
№ | 画面要素名 | 説明 |
1 | 基本プロファイル入力ページ | RTコンポーネントのプロファイル情報など、コンポーネントの基本情報を入力します。 |
2 | アクティビティ・プロファイル | RTコンポーネントがサポートしているアクティビティ情報などを指定します。 |
3 | データポート・プロファイル | RT コンポーネントに付属するデータポートのプロファイルを入力します。 |
4 | サービスポート・プロファイル | RT コンポーネントに付属するサービスポートおよびサービスポートに付属するサービスインターフェースのプロファイルを入力します。 |
5 | コンフィギュレーション | RTコンポーネントに設定するユーザ定義のコンフィギュレーション・パラメータセット情報およびシステムのコンフィギュレーション情報を入力します。 |
6 | ドキュメント生成 | 生成対象のRTコンポーネントに追加する各種ドキュメント情報を入力します。 |
7 | 言語・環境 | 生成対象のコード選択やOSなどの実行環境に関する情報を入力します。 |
8 | RTC.xml | 設定された情報を基に生成したRtcProfileのXML形式での表示・編集を行います。 |
RT コンポーネントのプロファイル情報など、コンポーネントの基本情報を入力するページです。
以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
RT-Component Basic Profile | ||
モジュール名 | RT コンポーネントを識別する名前です。必須入力項目。この名前は、生成されるソースコード中で、コンポーネントの名前に使用されます。英数字でなければなりません。 | ○ |
モジュール概要 | RT コンポーネントの簡単な概要説明です。 | - |
バージョン | RT コンポーネントのバージョンです。原則 x.y.z のような形式でバージョン番号を入力します。省略可能項目 | - |
ベンダ名 | RT コンポーネントを開発したベンダ名です。 | ○ |
モジュールカテゴリ | RT コンポーネントのカテゴリです。 | ○ |
コンポーネント型 | RTコンポーネントの型です。以下の選択肢の中から指定可能です。 ・STATIC:静的に存在するタイプのRTCです。動的な生成、削除は行われません。 ・UNIQUE:動的に生成・削除はできるが、各コンポーネントが内部に固有状態を保持しており、必ずしも交換可能ではないタイプのRTCです。 ・COMMUTATIVE:動的に生成・削除が可能で、内部の状態を持たないため、生成されたコンポーネントが交換可能なタイプのRTCです。 |
○ |
アクティビティ型 | RTコンポーネントのアクティビティタイプです。以下の選択肢の中から指定可能です。 ・PERIODIC :一定周期でRTCのアクションを実行するアクティビティタイプ ・SPORADIC :RTCのアクションを不定期に実行するアクティビティタイプ ・EVENT_DRIVEN :RTCのアクションがイベントドリブンであるアクティビティタイプ |
○ |
コンポーネント種類 | RTコンポーネントの実行形態の種類です。以下の選択肢から選択可能です。(複数選択肢の組み合わせ可) ・DataFlow : 周期的にアクションを実行する実行形態 ・FSM : 外部イベントによってアクションを実行する形態 ・MultiMode : 複数の動作モードを持つ実行形態 |
○ |
最大インスタンス数 | RT コンポーネント インスタンスの最大数です。自然数を入力してください。 | - |
実行型 | ExecutionContextの型です。 以下から選択可能です。・PeriodicExecutionContext : 周期実行を行うExecutionContext・ExtTrigExecutionContext : 外部トリガによって実行を行うExecutionContex | ○ |
実行周期 | ExecutionContextの実行周期です。正のdouble型の数値が入力可能です(単位Hz)。 | - |
概要 | RTコンポーネントに関する説明です。 | - |
RTC Type | 特定機能を実現するRTコンポーネントを区別する必要がある場合に指定します。 | - |
Output Project | ||
生成コードの出力対象プロジェクト名です。設定したプロジェクトが存在する場合には、そのプロジェクト内に、設定したプロジェクトが存在しない場合には、新規プロジェクトを生成します。 | ○ |
生成対象のRTコンポーネントがサポートしているアクティビティに関する情報を入力するページです。
Documentationセクションの内容は、アクティビティ毎に設定します。Documentationセクションには、選択中のアクティビティに対応した内容が表示されます。
以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
Activity Profile | ||
onInitialize | 初期化処理です。コンポーネントライフサイクルの開始時に一度だけ呼ばれます。 | - |
onFinalize | 終了処理です。コンポーネントライフサイクルの終了時に1度だけ呼ばれます。 | - |
onStartup | ExecutionContextが実行を開始するとき1度だけ呼ばれます。 | - |
onShutdown | ExecutionContextが実行を停止するとき1度だけ呼ばれます。 | - |
onActivated | 非アクティブ状態からアクティブ化されるとき1度だけ呼ばれます。 | - |
onDeactivated | アクティブ状態から非アクティブ化されるとき1度だけ呼ばれます。 | - |
onAborting | ERROR状態に入る前に1度だけ呼ばれます。 | - |
onError | ERROR状態にいる間に呼ばれます。 | - |
onReset | ERROR状態からリセットされ非アクティブ状態に移行するときに1度だけ呼ばれます。 | - |
onExecute | アクティブ状態時に周期的に呼ばれます。 | - |
onStateUpdate | on_executeの後毎回呼ばれます。 | - |
onRateChanged | ExecutionContextのrateが変更されたとき呼ばれます。 | - |
onAction | 対応する状態に応じた動作を実行するために呼ばれます。 | - |
onModeChanged | モードが変更された時に呼ばれます。 | - |
Documentation | ||
アクティビティ名 | 現在選択されているアクティビティの名称を表示します。 | - |
動作概要 | 対象アクティビティが実行する動作の概要説明を記述します。 | - |
事前条件 | 対象アクティビティを実行する前に成立すべき事前条件を記述します。 | - |
事後条件 | 対象アクティビティを実行した後に成立する事後条件を記述します。ただし、事前条件が満たされない状態で対象アクティビティが実行された場合は事後条件の成立は保証されません。 | - |
RT コンポーネントに付属するデータポートの情報を入力するページです。
各ポート (InPort/OutPort) を新規に追加する場合は、各セクションの「 Add 」ボタンを押してください。 また、各セクションの「 Delete 」ボタンを押すと、選択中のポートを削除することができます。 ドキュメントセクションの内容はポート毎に設定することが可能です。ドキュメントセクションには、選択中のポートに対応した内容が表示されます。 以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
DataPortプロファイル | ||
ポート名 | DataPortの名称です。半角英数字のみ入力可能です。 Data OutPort、Service Portと併せてポート名称は重複することができません。 |
○ |
Detail | ||
ポート名 | 現在選択されているData Portを「ポート名(InPort/OutPort)」の形式で表示します。 | - |
データ型 | DataPort が扱うデータ型です。 設定画面にて指定したIDL内で定義されているデータ型が利用可能です。 |
○ |
変数名 | DataPort に対応する変数名です。 | - |
表示位置 | ビルドビュー内でのData InPortの表示位置です。 | ○ |
概要説明 | データポートに対する概要説明を記述します。 | - |
データ型 | データポートの扱う型に対する説明を記述します。 | - |
データ数 | データが配列になる場合など、データ数に関する説明を記述します。 | - |
意味 | データの意味の説明を記述します。 | - |
単位 | データ単位に関する説明を記述します。 | - |
発生頻度,周期 | データの発生頻度、周期に関する説明を記述します。 | - |
処理速度,周期 | データの処理速度、処理周期に関する説明を記述します。 | - |
RT コンポーネントに付属するサービスポートの情報を入力するページです。
新規サービスポートは、画面左側「 RT-Component Service Ports 」欄の「 Add Port 」を選択することで追加することができます。 画面左側「 RT-Component Service Ports 」にてサービスポートを選択した状態で、「Add Interface 」を選択することで新規サービスインターフェースを追加することができます。 画面左側「 RT-Component Service Ports 」にて、サービスポートもしくはサービスインターフェースを選択した状態で「 Delete 」を選択することで、選択したポート/インターフェースを削除することができます。 以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
RT-Component Service Port Profile | ||
ポート名 | サービスポートの名称です。半角英数字のみ入力可能です。 Data InPort、Data OutPort、Service Port名称は重複できません。 |
○ |
表示位置 | ビルドビュー内でのサービスポートの表示位置です。 | ○ |
Documentation | ||
概要説明 | サービスポートに対する概要説明を記述します。 | - |
I/F概要説明 | サービスポートに付属するサービスインターフェースの概要説明を記述します。 | - |
項目 | 説明 | 必須 |
RT-Component Service Port Interface Profile | ||
インターフェース名 | サービスインターフェースの名称です。半角英数字のみ入力可能です。 サービスインターフェース名は重複することができません。 |
○ |
方向 | サービスインターフェースの種類です。以下の選択肢から選択可能です。 ・Provided:提供インターフェース(Service Provider用) ・Required:要求インターフェース(Service Consumer用) |
○ |
インスタンス名 | サービスインターフェースのインスタンス名です。半角英数字のみ入力可能です。 | ○ |
変数名 | サービスインターフェースの変数名です。省略された場合は、インスタンス名を使用します。 | - |
IDLファイル | サービスインターフェースで使用するIDLファイル名を指定します。「Browse...」ボタンをクリックすると、ファイル選択ダイアログが表示されます。 | ○ |
インターフェース型 | サービスインターフェースで使用するサービスの型です。IDL fileを指定するとIDL内で定義されている型情報が表示されます。半角英数字のみ入力可能です。 | ○ |
IDL Path | IDLのサーチパスです。「Browse...」ボタンをクリックすると、ディレクトリ選択ダイアログが表示されます。 | - |
Documentation | ||
概要説明 | サービスインターフェースに対する概要説明を記述します。 | - |
引数 | サービスインターフェースの引数に関する説明を記述します。 | - |
戻り値 | サービスインターフェースの戻り値に関する説明を記述します。 | - |
例外 | サービスインターフェースの例外に関する説明を記述します。 | - |
事前条件 | サービスインターフェースのオペレーションを実行前に満たしておくべき事前条件に関する説明を記述します。 | - |
事後条件 | サービスインターフェースのオペレーションを実行後に満たす事後条件に関する説明を記述します。 | - |
RT コンポーネントに設定するユーザ定義のコンフィギュレーション・パラメータ情報およびその他システムのコンフィギュレーション情報を入力するページです。
ユーザ定義コンフィギュレーション・パラメータ情報およびシステム・コンフィギュレーション情報を新規に追加する場合は、各セクションの「Add」ボタンを押してください。また、各セクションの「Delete」ボタンを押すと、選択中のコンフィギュレーション情報を削除することができます。
DetailセクションおよびDocumentationセクションの内容は、ユーザ定義コンフィギュレーション・パラメータ毎に設定することが可能です。各セクションには、選択中のユーザ定義コンフィギュレーション・パラメータに設定した内容が表示されます。
以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
RT-Component Configuration Parameter Definitions | ||
名称 | ユーザ定義コンフィギュレーション・パラメータの名称です。半角英数字のみ入力可能です。 ユーザ定義コンフィギュレーション・パラメータ名称は重複することができません。 |
○ |
Detail | ||
パラメータ名 | 現在選択されているユーザ定義コンフィギュレーション・パラメータを表示します。 | - |
データ型 | ユーザ定義コンフィギュレーション・パラメータのデータ型です。 設定画面にて指定したIDL内で定義されているデータ型が利用可能です。 |
○ |
デフォルト値 | ユーザ定義コンフィギュレーション・パラメータのデフォルト値です。2バイト文字を含む任意の値を設定可能です。 | ○ |
変数名 | ユーザ定義コンフィギュレーション・パラメータの変数名です。半角英数字のみ入力可能です。 | - |
単位 | ユーザ定義コンフィギュレーション・パラメータの単位です。 | - |
制約条件 | ユーザ定義コンフィギュレーション・パラメータに対する制約条件を記述します。制約条件の記述方法については、制約情報の記述方式を参照してください。 | - |
Widget | RTSystemEditorのConfigurationViewにてコンフィギュレーション・パラメータを設定する際に利用するコントロールを指定します。以下の値から選択可能です。 ・text:テキストボックス(デフォルト設定) ・slider:スライダ ・spin:スピンボタン ・radio:ラジオボタン |
○ |
Step | 入力用コントロールとして、「slider」を選択した場合に、スライダの刻み幅を指定します。 | - |
パラメータ名 | 現在選択されているユーザ定義コンフィギュレーション・パラメータを表示します。 | - |
データ名 | ユーザ定義コンフィギュレーション・パラメータの名称に対する説明を記述します。 | - |
デフォルト値 | ユーザ定義コンフィギュレーション・パラメータのデフォルト値に対する説明を記述します。 | - |
概要説明 | ユーザ定義コンフィギュレーション・パラメータに対する概要説明を記述します。 | - |
単位 | ユーザ定義コンフィギュレーション・パラメータの単位に対する説明を記述します。 | - |
データレンジ | ユーザ定義コンフィギュレーション・パラメータのデータ範囲に関する説明を記述します。 | - |
制約条件 | ユーザ定義コンフィギュレーション・パラメータの制約条件に関する説明を記述します。 | - |
RT-Component Configuration Parameter | ||
Configuration | 設定を行うコンフィギュレーション名です。一覧から選択します。 | ○ |
デフォルト値 | 設定対象コンフィギュレーションのデフォルト値です。予めデフォルト値が設定されている項目については、名称選択時にデフォルト値が設定されます。 | - |
生成対象のRTコンポーネントに関する各種ドキュメント情報を入力します。
このページで入力された情報は、生成されたコードにdoxygen形式で埋め込まれます。
以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
コンポーネント概要 | ||
概要説明 | 生成するRTコンポーネントの概要説明を記述します。 | - |
入出力 | RTコンポーネントの入出力に関する概略説明を記述します。 | - |
アルゴリズムなど | RTコンポーネントが使用しているアルゴリズムなどの説明を記述します。 | - |
その他 | ||
作成者・連絡先 | RTコンポーネントの作成者および連絡先に関する情報を記述します。 | - |
ライセンス,使用条件 | RTコンポーネントのライセンス情報、使用条件に関する情報を記述します。 | - |
参考文献 | 参考文献情報を記述します。 | - |
バージョンアップログ | ||
VersionUp Log | 今回の変更内容に関するログ情報を記述します。 | - |
ライセンス,使用条件 | 過去のバージョンアップ時のログ情報を表示します。 | - |
入力した RT コンポーネント仕様に基づき生成するテンプレート・ソースコードの言語選択や、OS 等の実行環境、依存ライブラリなどを入力するページです。
生成対象の言語ごとにセクションが分かれています。生成したい言語のセクションを選択し、各言語固有の設定情報を入力してください。 あるセクションを選択した場合には、他のセクションは全て閉じるようになっています。 コード生成実行時(基本プロファイル入力ページの「 コード生成 」ボタン押下時)に選択されていたセクションの言語用テンプレートコードが生成されます。 以下に各入力項目について説明いたします。
項目 | 説明 | 必須 |
言語 | 生成対象の言語を指定します。 | ○ |
環境 | ||
Version | 生成対象RTCを実装している言語のバージョン情報を設定します。 | - |
OS | 生成対象RTCが動作するOS情報を設定します。 | - |
OS Version | 生成対象RTCが動作するOSのバージョン情報を設定します。 | - |
CPU | 生成対象RTCが動作するCPUアーキテクチャ情報を設定します。 | - |
その他OS情報 | 生成対象RTCが動作するOSについて、バージョン情報以外の補足情報を設定します。 | - |
その他CPU情報 | 生成対象RTCが動作するCPUについて、アーキテクチャ情報以外の補足情報を設定します。 | - |
ライブラリ情報 | ||
Name | 生成対象RTCが利用する外部ライブラリの名称を指定します。 | ○ |
Version | 生成対象RTCが利用する外部ライブラリのバージョン情報を指定します。 | - |
Info. | 生成対象RTCが利用する外部ライブラリの補足情報を指定します。 | - |
入力した RT コンポーネント仕様を記した XML ファイル (RTC.xml) の内容確認、編集を行うページです。他のページで設定した内容を確認したり、GUI 画面からは入力できない項目を直接編集するために使用します。
表示されるRTコンポーネント仕様の内容は、このページに切り替えた時に他ページで設定されている内容を基に作成されます。
画面右上の「Update」ボタンをクリックすると、このページで設定、変更した内容を他のページに反映させることができます (他のページへ反映させるのみで、ファイルへの書き込みは行いません) 。また、以下のような画面が表示され、変更点を確認することができます。修正内容を他ページへ反映する場合には「OK」をクリックしてください。
このページで直接入力した内容は、このページを表示している状態で保存した場合のみ保存されます。このページにて内容編集後、他ページを開いた状態で保存すると、他のページにて入力した項目が優先されます。 このページの内容を保存する場合には、RTC.xml のスキーマ定義に従ったバリデーションが行われます。バリデーション時にエラーが発見された場合は、以下のようなエラーメッセージが表示されますので、表示内容を参考に該当箇所を修正してください。
データポートおよびユーザ定義コンフィギュレーション・パラメータへの制約条件は以下の書式で設定します。
設定内容 | 設定書式 |
指定なし | 空白 |
100(即値) | 100 |
100以上 | x >= 100 |
100以下 | x<=100 |
100超 | x>100 |
100未満 | x<100 |
100以上200以下 | 100<=x<=200 |
100超200未満 | 100<x<200 |
列挙型 | (9600,19200,115200) |
配列型 | x>100, x>200, x>300 |
ハッシュ型 | {key0: 100<x<200, key1: x>=100} |
ビルドビューは作成中の RT コンポーネントの設定内容をグラフィカルに表示するためのビューです。 ビルドビューの表示例を以下に示します。
「 RTCBuilder 」パースペクティブ切り替え時にビルドビューが表示されていない場合、以下の手順にて表示することができます。 画面上部のメニューから[ウィンドウ]-[ビューの表示]-[その他]を選択。表示された「ビューの表示」画面にて、「OpenRTP Tools」-「BuildView」を選択。
メニューの「ウィンドウ(W)」から「ビューの表示(V)」を選択し、「その他(O)」を押下します。
「RepositoryView」を選択することで、リポジトリビューが起動します。
ローカルに存在する RT コンポーネント仕様記述ファイルを読み込み、ツリービューで表示する機能です。
ここでは、リポジトリビューに RT コンポーネント仕様記述ファイルを指定して表示する方法の説明を行います。 リポジトリビュー内で右クリックし、表示されるコンテクストメニューから「 ファイルから読込 」を選択すると、ファイル選択ダイアログが表示されます。ここでリポジトリビューに読み込む RT コンポーネント仕様記述ファイルを選択します。 このダイアログは xml ファイルのみ表示するようフィルタがかかります。
ローカルに存在する RT コンポーネント仕様記述ファイルを読み込んだ場合、最上位階層は読み込んだ RT コンポーネント仕様記述ファイルの絶対パスを表示します。そして、2階層目は RT コンポーネント仕様記述ファイル内で定義されている category 属性の値を表示します。また3階層目は RT コンポーネント仕様記述ファイル内の name 属性に記述されている値と RT コンポーネント仕様記述ファイル名を表示します。
ここでは、 RT コンポーネント仕様記述ファイルが存在するディレクトリを指定して、ディレクトリ内の全ファイルの読み込み、表示を行う方法を説明します。 リポジトリビュー上で右クリックし、表示されるコンテクストメニューから「 ディレクトリから読込 」を選択すると、ディレクトリ選択ダイアログが表示されます。リポジトリビューに読み込むディレクトリを選択します。ディレクトリ以下に存在する RT コンポーネント仕様記述ファイルを読み込みます。
リポジトリビューのコンポーネントは、リポジトリビュー上で右クリックし、コンテクストメニューから「 削除 」を選択すると、削除することが可能です。 「 削除 」はパス、 category 、コンポーネントのいずれかを選択している場合のみ選択できます。
生成対象RTコンポーネントの各種プロファイル情報を設定した後、テンプレートコードの生成を行います。 基本プロファイル入力ページの「 コード生成 」ボタンをクリックすると、入力したプロファイル情報に応じたテンプレートコードの生成が行われます。
各言語を選択した際のコード生成実行時に生成されるテンプレートファイルは以下のとおりです。
ファイル名 | 説明 |
README_<RTC名> | README ファイルです。RT コンポーネント生成時に設定した情報などが記述されています。 |
<RTC名>.conf | コンポーネントの設定ファイルです。 |
rtc.conf | コンフィギュレーションファイルです。ExecutionContextの実行周期などが記述されています。 |
ファイル名 | 説明 |
<RTC名> Comp.cpp | RT コンポーネントを起動するコードです。 |
<RTC名>.h | RT コンポーネント本体のヘッダです。 |
<RTC名>.cpp | RT コンポーネント本体のコードです。 |
<サービス型名>SVC_impl.h | サービスプロバイダのヘッダです。(※) ServiceProvider にて指定された Type のみが出力されます。 |
<サービス型名>SVC_impl. cpp | サービスプロバイダの実装コードです。(※) ServiceProvider にて指定された Type のみが出力されます。 |
Makefile.<RTC名> | コンパイルするための Makefile です。 |
<RTC名>_vc8.sln | Visual Studio 2005用のソリューションファイルです。 |
<RTC名>_vc8.vcproj | Visual Studio 2005用のRTコンポーネントプロジェクトファイルです。 |
<RTC名>Comp_vc8.vcproj | Visual Studio 2005用の起動コード用プロジェクトファイルです。 |
<RTC名>_vc9.sln | Visual Studio 2008用のソリューションファイルです。 |
<RTC名>_vc9.vcproj | Visual Studio 2008用のRTコンポーネントプロジェクトファイルです。 |
<RTC名>Comp_vc9.vcproj | Visual Studio 2008用の起動コード用プロジェクトファイルです。 |
Copyprops.bat | プロパティ・ファイルコピー用バッチファイルです。 |
User_config.vsprops | ユーザ定義用プロパティ・ファイルです。 |
OpenRTM-aist.vsprops | OpenRTM-aist 用プロパティ・ファイルです。 |
ファイル名 | 説明 |
<RTC名>Comp.java | RT コンポーネントの起動用クラスです。 |
<RTC名>.java | RT コンポーネントの Component Profile, 初期化処理などを定義したクラスです。 |
<RTC名>Impl.java | RT コンポーネントの本体です。 |
build_<RTC名>.xml | RT コンポーネントのビルド用ファイルです。 |
<サービス型名> SVC_impl.java | サービスプロバイダの実装クラスです。(※) |
ファイル名 | 説明 |
<RTC名>.py | RT コンポーネントのコードです。 |
<サービス型名>_idl.py | |
<サービス型名>_idl_example.py | サービスプロバイダの実装ファイルです。(※) |
ファイル名 | 説明 |
<RTC名>.cs | RTコンポーネントのコードです。 |
<RTC名>.csproj | RTコンポーネントのプロジェクトファイルです。 |
<サービス型名>Impl.cs | サービスプロバイダの実装クラスです。(※) |
<RTC名>.csproj.user | プロパティ・ファイルです。 |
App.config | アプリケーション用コンフィギュレーションファイルです。 |
Program.cs | RTコンポーネントの起動用クラスです。 |
RtcBuilder は、生成したファイルと同名のファイルが出力先に既に存在し、既存ファイルと生成ファイルの間で出力内容に差異が存在する場合、どちらの出力を利用するかを選択する確認画面が表示されます。
※1 Mergeでは、<rtc-template block=”block”>タグで囲まれた範囲のみを最新の生成内容で上書します。生成したテンプレートは、ユーザが変更しない範囲をあらかじめこのタグで囲んでいます。このタグの中は変更後もマージすることで消えてしまいますので、修正しないようにしてください。
生成対象言語の開発環境用プラグインがインストールされている場合、コード生成実行後にパースペクティブ切り替えの確認メッセージが表示されます。 対象のプラグインがインストールされている場合には以下のようなメッセージが表示されますので、パースペクティブの切り替えを行うかどうかを選択してください。
※各言語用の開発環境用プラグインがインストールされており、出力対象プロジェクトが新規作成プロジェクトの場合は、各プロジェクトのプロパティに対象言語の属性が設定されます。
生成したテンプレートファイル、テンプレートファイルを基に作成した RT コンポーネントの実行用バイナリファイルなどを各種形式でアーカイブする機能です。 基本プロファイル入力ページの「 パッケージ化 」ボタンをクリックすると、パッケージング内容を設定するための「RTコンポーネント パッケージ化」画面が表示されます。
以下、各項目について説明いたします。
項目 | 説明 | |
対象プロジェクト | パッケージング対象のプロジェクトを選択してください。 | |
宛先ディレクトリ | パッケージングした成果物を出力するディレクトリを入力してください。「参照」ボタンを使用することで、ディレクトリ選択ダイアログが表示されます。 | |
アーカイブ方式 | 作成するアーカイブの形式を選択してください。 | |
オプション | 各アクション内での動作に関する概要説明。省略可能項目。 | |
アーカイブ形式 | ZIP フォーマットを利用したアーカイブと、tar フォーマットを利用したアーカイブを作成することが可能です。使用するフォーマット形式を選択してください。 | |
アーカイブ内容の圧縮 | アーカイブ内容を圧縮する場合には、チェックボックスを ON にしてください。 | |
ディレクトリ構造 | アーカイブ対象プロジェクトのディレクトリ構造をそのまま保持した形でアーカイブを行うか、全てルートディレクトリに入れた形でアーカイブを行うかを選択してください。 |
※アーカイブ方式(「ソース」「バイナリ」「ソース+バイナリ」)ごとに、どのファイル種類をアーカイブに含めるかは、後述の「設定画面」にて設定することができます。
RTCBuilder では、RTC プロファイルエディタで入力した内容を RTC プロファイル XML(RTC.xml) に保存したり、保存した内容を再度読み込むことが可能です。
※[Save As…]を選んだ場合、任意のプロジェクト内に保存することが可能です。
RTC プロファイルエディタで入力,設定した内容をXML形式、 YAML 形式で外部ファイルにエクスポート、エクスポートしたファイルをインポートする機能です。 基本プロファイル入力ページの「 エクスポート 」ボタンをクリックすると、プロファイル情報をエクスポートする先を選択するファイルダイアログが、「 インポート 」ボタンをクリックすると、インポート元のプロファイル情報を選択するファイルダイアログがそれぞれ表示されます。
※エクスポート処理時の形式は、「ファイル エクスポート先選択」ダイアログの「ファイルの種類」によって選択することが可能です。
ここでは RTCBuilder の各種設定について説明します。 RTCBuilder の設定画面は、画面上部メニューの[ウィンドウ]-[設定....]を選択して表示される「設定」画面から「 RTCBuilder 」を選択すると表示されます。
Data PortおよびConfigurationパラメータで設定するデータ型を定義したIDLファイルの位置を設定することができます。 IDL格納ディレクトリを新規に追加する場合は、「Add」ボタンをクリックしてください。また、「Delete」ボタンをクリックすると、選択中のIDL格納ディレクトリを削除することができます。 IDL格納ディレクトリの実際の位置は、「IDL File Directories」欄内をクリックして表示されるディレクトリ選択画面にて選択してください。
RTC プロファイルエディタの基本プロファイル入力ページおよびコンフィギュレーション・プロファイル入力ページにて新規エディタ表示時、新規項目追加時にデフォルトで設定される内容を設定することができます。
なお、この設定画面中のデフォルト設定(「デフォルトの復元」ボタンをクリックした際に設定される内容)は以下のとおりです。
項目 | デフォルト値 |
Basic | |
Component name | ModuleName |
Description | ModuleDescription |
Version | 1.0.0 |
Vendor | VendorName |
Category | Category |
Component Type | STATIC |
Component’s activity type | PERIODIC |
Max. Instances | 1 |
Component kind | DataFlowComponent |
Execution type | PeriodicExecutionContext |
Execution rate | 1.0 |
Configuration | |
Name | conf_name |
Type | conf_type |
Variable Name | conf_varname |
Default Value | conf_default |
Constraint | conf_constraint |
Unit |
RTC プロファイルエディタのデータポート・プロファイル入力ページおよびサービスポート・プロファイル入力ページにて新規項目を追加した際にデフォルトで設定される内容を設定することができます。
なお、この設定画面中のデフォルト設定(「デフォルトの復元」ボタンをクリックした際に設定される内容)は以下のとおりです。
項目 | デフォルト値 |
Data Port | |
DataPort Name | dp_name |
DataPort Type | dp_type |
DataPort Variable Name | dp_vname |
DataPort Constraint | dp_constraint |
DataPort Unit | |
Service Port | |
ServicePort Name | sv_name |
Service Interface | |
Interface Name | if_name |
Instance Name | if_instance |
Variable Name | if_varname |
RTC プロファイルエディタのコンフィギュレーション・プロファイル入力ページのシステム・コンフィギュレーション情報に表示される項目を設定することができます。
なお、この設定画面中のデフォルト設定(「デフォルトの復元」ボタンをクリックした際に設定される内容)は以下のとおりです。
項目 | デフォルト値 |
exec_cxt.periodic.type | PeriodicExecutionContext |
exec_cxt.periodic.rate | 1000 |
exec_cxt.evdriven.type | EventDrivenExecutionContext |
RT コンポーネントのパッケージング機能の各アーカイブ形式に含めるファイルを設定することができます。
設定画面はアーカイブ形式ごとのセクション(Source Export,Binary Export,Source+Binary Export)に分かれています。また、各セクションは拡張子指定部と、ファイル名指定部から構成されています。
拡張子指定部では、各アーカイブ形式に含めるファイルの拡張子を設定することができます。「タイプの選択」ボタンをクリックすると、以下のようなタイプ選択画面が表示されますので、アーカイブに含めたいファイルタイプを選択してください。
ファイル設定部ではアーカイブに含めるファイル名を設定することができます。「ファイル名」リスト下部の「 Add 」ボタンをクリックすると新しい行が追加されますので、アーカイブに含めたいファイル名を直接入力してください。また、「 Delete 」ボタンをクリックすると、選択している行を削除することができます。 上図の Export設定画面(セクション)の例では、アーカイブ方式として「 Source+Binary 」を選択した際に、拡張子が「 cpp 」「 h」 であるファイルと、ファイル名が「 Makefile 」「 README 」であるファイルをアーカイブに含める設定となります。 なお、この設定画面中のデフォルト設定(「デフォルトの復元」ボタンをクリックした際に設定される内容)は以下のとおりです。
項目 | デフォルト値 |
Source Export | |
拡張子 | conf,cpp,h,vcproj,java,xml,py |
ファイル名 | Makefile,README |
Binary Export | |
拡張子 | conf,exe,class,py |
ファイル名 | README |
Source+Binary Export | |
拡張子 | conf,cpp,h,vcproj,java,xml,py,exe,class |
ファイル名 | Makefile,README |
Build View 内に表示されるアイコンの色情報を設定することができます。
それぞれの色設定ボタンにより、コンポーネント本体、DataInPort、DataOutPort、ServicePort、ServiceInterface の色設定を変更することが可能です。
各アクティビティの有効無効属性(ON/OFF)を設定することができます。