[openrtm-users 01167] Re: ポート名の設定について

Tasuku Owada oowada @ sec.co.jp
2010年 3月 18日 (木) 14:34:36 JST


安藤様

株式会社セックの大和田です。
ご回答ありがとうございます。

この度、異なるミドルウェア上にある複数のコンポーネントを複合化して、
OpenRTM-aistの一つのコンポーネントとして見せかけたいと考えております。
(このコンポーネントを仮にブリッジRTCとします。)
ブリッジRTCはRTシステムエディタ上で見たとき、
複合コンポーネントとして見せたいため、
ブリッジRTCのポート名は下位コンポーネントのポート名と
同一にしたいと考えております。

以下の図のように、
BridgeRTCのポートをComp1とComp2の持つ
ポートと同一にしたい。

            BridgeRTC
            +------------+
            |            ■Comp1.port
            |            |
            |            ■Comp2.port
            +------------+
                  |
------------------+-----------------
   |              |
  +-------+            +-------+
  |       |            |       |
  |       ■Comp1.port |       ■Comp2.port
  |       |            |       |
  +-------+            +-------+
   Comp1                Comp2

※ BridgeRTCはOpenRTM-aistとし、Comp1,2は異なるミドルウェアとする

BridgeRTCに対して"Comp1.port"という名前でAddInPort/AddOutPortを行うと、
"BridgeRTC.port"に変換されてしまうため、後から変更する方法を検討していました。


以上です、宜しくお願い致します。


Ando Noriaki さんは書きました:
> 大和田様
> 
> 安藤です
> 
> ポート名の制限についてはドキュメントに記述がありませんが、
> 実際には "." を使用することができません。
> 申し訳ありませんが、"." を使用しないようにお願いいたします。
> 
> 
>> 産総研 安藤様
>>
>> お世話になっております。
>> 株式会社セックの大和田と申します。
>>
>> ポート名に設定について2点質問があります。
>>
>> 1.
>> AddInPort/AddOutPort でポートを追加する場合に、
>> ポート名に"."を含んだ文字列を指定すると、
>> 以下のように設定されてしまいます。
>> 例)
>> コンポーネント名 :sample
>> 追加するポート名 :device.port
>> 予想されるポート名:sample.device.port
>> -------------------------------
>> 設定されるポート名:sample.port
>>
>> 調査した結果、PortBase::setOwnerにて、
>> ポート名を"."区切りにして、その末尾だけを
>> 取得しているようなのですが、
>> これにはどのような意図があるのでしょうか?
> 
> 複合コンポーネントを作成する際に、複合コンポーネントが
> 外部にexportするポートを名前で区別する必要があります。
> そのために、現在ポート名は内部的に
> <インスタンス名>.<ポート名>
> として扱われています。
> 
> そういうわけですので、ポート名には"."を使用しないようにお願いいたします。
> 
>> 2.
>> また、1に関連して、
>> ポート名を PortBase::setNameを用いて変更することを
>> 検討しているのですが、問題ないでしょうか?
> 
> ポート名はコンストラクタで渡したものを変更しないようお願いします。
> どうしても名前を変更する必要があるようでしたら、
> どのような理由で変更しなければならないか教えていただけますか?
> 後から変更する方法を提供することも検討したいと思います。
> 
> 以上、よろしくお願いいたします。
> 
>> 以上、2点、ご教示いただけると幸いです。
>> 宜しくお願い致します。
>>
>> --
>> 大和田資(Owada Tasuku)
>> 株式会社セック(SEC Co.,LTD) 開発本部 第四開発部
>> E-mail:oowada @ sec.co.jp
>>
>> 〒150-0031 渋谷区桜丘町22-14 NESビル
>> Tel:03-5458-7743  Fax:03-5458-7726
>>
>> ======================================================================
>> この電子メールの内容および添付されている情報は、機密情報であると同時に、
>> 宛先として意図した特定の受信者のみに送信いたしております。当方の誤送信
>> 等により、心当たりのない方が受信された場合は、大変お手数ですが、受信さ
>> れましたメール内容は削除していただきますようお願いいたします。
>> ======================================================================
>>
>>
>>
> 
> 
> 

-- 
大和田資(Owada Tasuku)
株式会社セック(SEC Co.,LTD) 開発本部 第四開発部
E-mail:oowada @ sec.co.jp

〒150-0031 渋谷区桜丘町22-14 NESビル
Tel:03-5458-7743  Fax:03-5458-7726

======================================================================
この電子メールの内容および添付されている情報は、機密情報であると同時に、
宛先として意図した特定の受信者のみに送信いたしております。当方の誤送信
等により、心当たりのない方が受信された場合は、大変お手数ですが、受信さ
れましたメール内容は削除していただきますようお願いいたします。
======================================================================




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