[openrtm-users 01231] Re: rtc_handle for OpenrtM-aist-1.0.0

Ando Noriaki n-ando @ aist.go.jp
2010年 5月 20日 (木) 19:00:22 JST


安藤です


2010年5月20日18:41 ts <suehiro @ is.uec.ac.jp>:
> ジェフ様,皆様,
>
> 末廣です.
>
>>> (2)'dataport.corba_cdr.inport_ref'にwriteしてもデータが送られない?
> (10/05/17 20:31), Geoffrey Biggs wrote:
>> 2)接続されてないポートにデータを書けないようです。そのために、rtcshell
>> でdummy connectionを作ってデータを書きます。参照はこのファイルの79行目
>> です。
>
> ありがとうございます.
> もともとRtcInportに持たせておいたdummy connectorを接続することで
> データが送れることを確認しました.
>
>>> (3)'dataport.corba_cdr.outport_ref'がない.
>>> outportの側はobject referenceすら取得できません.
>> 3)この問題について思ったことはないんですが、rtctreeの場合、できます。
>> ちょっと複雑ですけど。コネクションから取りたい場合はrtctreeがAPIの中でコ
>> ネクションのポートを探して、コネクションのオブジェクトに入れます。ポート
>> の場合は既にCORBAオブジェクトがあるので、そのCORBAオブジェクトから取れます。
>
> こちらは,そもそもoutport側のreadさせてくれるオブジェクトが
> なくなっているように見えます.(以前は簡易pullができたのに,,,)
>
> つまり,inportを作ってサブスクライブしないとデータを送ってくれない.
> ジェフさんも,rtprintではrtcを作って接続していますよね.

1.0でもPull型通信はサポートしています。
dataflow type をPullにして接続すると、OutPortCdrオブジェクトの
リファレンスを取得することができます。

ちなみに1.0では、色々と理由がありまして、接続の際にdata flowtype に応じて
InPortCdr または OutPortCdr オブジェクトを動的に生成するようにしています。



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