[openrtm-users 00943] Re: 同一インターフェースのProvider,Consumerを持つサービスポートの不具合(OpenRTM-aist 0.4.2 C++)

Ando Noriaki n-ando @ aist.go.jp
2009年 9月 4日 (金) 16:45:48 JST


小島様

安藤です

> 2009/9/4 Ando Noriaki <n-ando @ aist.go.jp>:
>> 安藤です
>>
>> 補足です。
>>
>> 対応関係についての記述はリファレンスマニュアルのsubscribeInterfaces のところ
>>
>> http://www.is.aist.go.jp/rt/OpenRTM-aist/doxygen/ClassReference/classRTC_1_1CorbaPort.html#d9a122cbe2f9892cc9555e805571742e
>>
>> に記述があります。
>>
>
> わかりました。仕様なのですね。
>
> この記述は読みましたが、同じ登録されているポートの中では行われない仕組みがあったのかと
> 思っておりました。
>
> 確認なのですが、
> 現在の仕組みでは、すなわち、登録可能なサービスが2つ以上あった場合には、接続がおこなわれると、
> 接続された先のServiceが、2つとも実行されるかと思ったのですが、最初に見つかったほうのみ、呼び出される
> という仕様でよろしいでしょうか?
> (検索する先がソートされた後ならば一定だが、そうでない場合は不定になる可能性もある)

基本的には、インターフェースのインスタンス名はかぶらないという前提です。

ご質問は、仮に同名のプロバイダが複数と、コンシューマが1個の場合、
どのように接続されるか、ということでしょうか?
でしたら、最初に見つかったものがコンシューマに関連付けられ
それだけが呼び出されるという動作であっています。

コンシューマで使用さされる CorbaConsumer はCORBAオブジェクトの
単なるプロキシなので、一回の呼び出しで複数の別のオブジェクトが
それぞれ呼び出されるという動作はしません。

> また、この仕組みは、Releaseまでには、変更されなということは、しばらく変更がないということでよろしいでしょうか?

その予定です。


-- 
安藤慶昭@独立行政法人産業技術総合研究所 研究員
                  知能システム研究部門 統合知能研究グループ
                  〒305-8568 茨城県つくば市梅園1-1-1 中央第2
                  TEL: 029-861-5981 FAX: 029-862-6631
                  n-ando @ aist.go.jp, n-ando @ ieee.org



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