start-jsk / rtmros_common

OpenRTM - ROS interoperability packages
http://wiki.ros.org/rtmros_common
12 stars 52 forks source link

[openrtm_tools/rtmlaunch.py] add ec_index attribute to rtactivate tag #1112

Open Naoki-Hiraoka opened 3 years ago

Naoki-Hiraoka commented 3 years ago

rtmlaunch.pyで読み込むlaunchファイルの<rtactivate>タグに、ec_indexattributeを追加しました.

現在の<rtactivate>タグは、RTCの実行コンテキストのidがデフォルトの0でないとアクティベートすることができません。hrpsys_config.pyなどで1つの実行コンテキストのもとで複数のRTCを走らせるようにすると、それらのRTCの実行コンテキストのidがデフォルトの0ではない場合があります. そのような場合でも<rtactivate>タグが使いたいというケースがあったので、attributeで実行コンテキストのidを指定できるようにする必要がありました。

デフォルトの挙動は変わりません.

(実行コンテキストのidが常にデフォルトの0とは限らないという例)

 rtmlaunch  hrpsys_ros_bridge samplerobot.launch
$ rtcat localhost:15005/seq.rtc
seq.rtc  Active
(略)
$ rtdeact localhost:15005/seq.rtc # id 0の実行コンテキストを停止する
$ rtcat localhost:15005/seq.rtc # 停止しない
seq.rtc  Active
(略)
$ rtdeact localhost:15005/seq.rtc -e 1 # id 1の実行コンテキストを停止する
$ rtcat localhost:15005/seq.rtc # 停止する
seq.rtc  Inactive
(略)
$