[openrtm-users 01475] Re: add(In|Out)Port operate abnormally when called from constructor function in python version

Ando Noriaki n-ando @ aist.go.jp
2010年 11月 10日 (水) 18:57:59 JST


松坂様

安藤です

1.0からは、松坂さんがご推察の理由により、ポート関係の初期化関数や
登録関数はonInitialize()で呼ぶように変更いたしました。
エラーメッセージ関しては検討したいと思います。
よろしくお願いいたします。


2010年11月10日16:36 Yosuke Matsusaka <yosuke.matsusaka @ aist.go.jp>:
> OpenRTM-aist開発者の皆様
>
> 産総研の松坂です。
>
> Python版で遭遇した不具合についてレポートします。
>
> ポートの登録を行う際に、onInitialize関数の中でadd(In|Out)Port関数を呼び出しますが、これを間違って__init__の中で
> やってしまうと、ポートの登録がおかしくなります。
>
> おそらく__init__が呼ばれる時点では、インスタンス名が確定していないからだと思いますが、例えばConsole0.rtcにoutという
> ポートを登録しようと思うと、本来の「Console0.rtc.out」ではなく「.out」となってしまうようです。
>
> 対処が難しいようであれば、「__init__の時点ではadd(In|Out)Port関数を呼ばないこと」と決めてしまっても良いと思うのですが、
> その場合でも、間違って呼び出された場合は、インスタンス名がセットされていない旨のエラーメッセージを出して欲しく思います。
>
> よろしくお願いします。
>
> --
> Yosuke Matsusaka, Ph.D  <yosuke.matsusaka @ aist.go.jp>
>  Interaction Modeling Group /
>  National Institute of Advanced Industrial Science and Technology (AIST)
>  Tel: 029-862-6726  Web: http://staff.aist.go.jp/yosuke.matsusaka/
>
>



-- 
安藤慶昭@独立行政法人産業技術総合研究所 知能システム研究部門
    統合知能研究グループ 主任研究員, 博士(工学)
    〒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

Noriaki Ando, Ph.D.
    Senior Research Scientist, RT-Synthesis R.G., ISRI, AIST
    AIST Tsukuba Central 2, Tsukuba, Ibaraki 305-8568 JAPAN
    e-mail: n-ando @ aist.go.jp, web: http://staff.aist.go.jp/n-ando
    OpenRTM-aist: http://www.openrtm.org



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