[openrtm-users 02259] Re: OpenRTM-aist 1.1RCバージョン各言語間の統一のお願い

Ando Noriaki n-ando @ aist.go.jp
2011年 10月 11日 (火) 16:42:41 JST


菅さん

安藤です

> 3.データポートの命名規則が違う
> C++版と,
> Java版&Python版の間で,
> ポートの名前の命名規則が異なるので不便です.
> C++版では,
> インスタンス名.ポート名
> となるところが,
> .ポート名
> となっています.
> どちらかに統一していただけると便利になるのですが・・・

これは
C++: インスタンス名.ポート名
Py,Java: .ポート名
という意味でしょうか?それとも
C++: .ポート名
Py,Java: インスタンス名.ポート名
でしょうか?

ちなみに、その現象が発生しているコンポーネントはサンプルのRTCでしょうか?

ポート名が「インスタンス名.ポート名」にならない理由として、
addPort(旧 registerPort) をコンストラクタで呼んでいる可能性が有ります。
もしそうならonInitializeで呼ぶようにしてみてください。

いま確認したところ、各ツールで生成されるコードのaddPort
が呼ばれるタイミングは以下の通りでした。

rtc-template + C++: OK (onInitialize)
rtc-template(in C++) + Python: NG (コンストラクタ)
rtc-template(in Py) + Python: NG (コンストラクタ)
RTBuilder + C++: OK (onInitialize)
RTCBuilder + Python: NG (コンストラクタ)
RTCBuilder + Java: OK (onInitiaslize)

ただし、この現象はtoolsのRC2では修正されています。
RC2のダウンロードページはまだありませんが早急に作成しますので、
そちらからダウンロードしてみてください。

よろしくお願いします。

-- 
安藤慶昭@独立行政法人産業技術総合研究所 知能システム研究部門
    統合知能研究グループ 主任研究員, 博士(工学)
    〒305-8568 つくば市梅園1-1-1 中央第2
    e-mail: n-ando @ aist.go.jp, web: http://staff.aist.go.jp/n-ando
    OpenRTM-aist: http://www.openrtm.org


openrtm-users メーリングリストの案内