複合コンポーネントの操作を説明します。
複数のコンポーネントをまとめて複合コンポーネントにすることができます。
複合コンポーネントにしたいコンポーネントを選択して、右クリックして「Create Composite Component」を選択すると、複合コンポーネント生成ダイアログが表示されます。
ダイアログの各項目は以下のとおりです。
No. | ダイアログ説明 | 説明 |
① | Manager | ネームサービスビューに表示されているマネージャ一覧からマネージャを選択します。ここで選択されたマネージャが複合コンポーネントを生成します。 |
② | Name | 複合コンポーネントのインスタンス名を指定します。 |
③ | Type | 複合コンポーネントの種別を指定します。指定可能な種別は以下のとおり。 [PeriodicECShared] 各RTCが ExecutionContext のみを共有する形で動作します。各RTCの状態は独立しているため、複合コンポーネント内で複数の状態が存在することもあります。 [PeriodicStateShared] 各RTCが同一の ExecutionContext を共有するとともに、状態も共有する形で動作します。 [Grouping] 各RTCが何も共有しない複合コンポーネントで、各RTCがそれぞれ ExecutionContext、状態を保持します。 |
④ | Path | 複合コンポーネントに設定するパスを指定します。 |
⑤ | Port | 子のコンポーネントのポート一覧から、複合コンポーネントに表示するポートを選択します。 ここで選択されたポートに対して、複合コンポーネントにプロキシ用のポートが作成されます。 |
⑥ | - | ポートの全選択・全解除ボタン |
複合コンポーネントを作成すると、子のコンポーネントとして選択していたコンポーネントはシステムエディタ上から表示が消え、新しい複合コンポーネントが描画されます。
複合コンポーネントのダイアグラムをダブルクリックするか、右クリックして「エディタで開く」を選択すると、新しいシステムダイアグラムが開き、複合コンポーネント内部が表示されます。
複合コンポーネント内を表示するシステムエディタを開いて、ネームサービスビューから RTC をドラッグ&ドロップすることで、複合コンポーネントの子が追加されます。追加された子RTCのポートはすべて非公開に設定されます。
複合コンポーネント内を表示するシステムエディタを開いて、そこで子のコンポーネントを削除することで、複合コンポーネントの子が削除されます。
削除された子のコンポーネントは、複合コンポーネント内から表示が消え、元のシステムダイアグラム(複合コンポーネント自身が表示されているダイアグラム)に表示されます。
複合コンポーネント上で右クリックして「Delete」を選択すると、複合コンポーネントがダイアグラムから削除されます。
削除時に複合コンポーネントを別のシステムダイアグラムで開いていると、エディタの終了確認のダイアログが表示されます。
複合コンポーネント上で右クリックして「Decompose Composite Component」を選択すると、複合コンポーネントへexist()が送られ、コンポーネント自体を終了します。
解除時に複合コンポーネントを別のシステムダイアグラムで開いていると、エディタの終了確認のダイアログが表示されます。
複合コンポーネントが解除されると、子のコンポーネントが元のシステムダイアグラム(複合コンポーネントが表示されていたダイアグラム)に表示されます。
複合コンポーネント内を表示するシステムエディタにあるコンポーネントのポートが複合コンポーネント上に公開されている場合、下記のように別のアイコンで表示されます。
No. | 名前 | 形状 |
1 | InPort | |
2 | OutPort | |
3 | ServicePort |
公開されているポートを右クリックして、「Unexport」を選択すると、そのポートが公開されていない状態に変わります。また、公開されていないポートを右クリックして、「Export」を選択すると、そのポートが公開されている状態に変わります。
ただし、ポートが別のコンポーネントのポートと接続されている場合は、「Unexport」にすることができません。