[openrtm-users 00558] Re: ネームサーバの登録名の取得方法

Takashi Kojima tkjim48 @ gmail.com
2008年 7月 31日 (木) 03:09:20 JST


静岡大 清水 様

ご教授ありがとうございます。

> RTC::RTObject_impl::getNamingNames()で取得できたように
> 記憶しています。

この関数だったのですね。ネーミングネームというのをネーミングサーバ名の取得かと
思っていたために、ためしておりませんでした。試したところ無事動作を確認することが出来ました。
ありがとうございます。

>> hogehoge という、contextは取得できるのですが、
>> インスタンス化されたreferenceまでは、うまく取得するこ
> とができませんでした。
>
> 私は実際にはやったことはありませんが、
> RTC::CorbaNamingの実装あたりが
> 参考になるのではないかと思います。

ざっとみて、listという関数がそうなのかなと思いましたが、
context自体にもリストを取得する機能があるため、
そちらを利用してみました。

ただ、もう少しソースコードをじっくり読んでみようと思います。

> ところで、referenceが取得できないというのは、
> resolveができないという意味なのでしょうか?

言い方が紛らわしくて、申し訳ございません。

RTC-linkのような表示方法ができないということを、書こうとしていました。
hogehoge/RTcomponet.rtc
というようにネームサーバに登録がされている場合、ディレクトリのようなアイコン(context)の取得は可能(hogehoge)だが、
RTComponent.rtcの部分(reference)がうまく取得できず、という意味でした。
reference,contextの概念については、サンプルソースを読んで解釈をしていたので、違っているかもしれません。

説明力不足で、うまく説明できていなかったようなので、例をまじえて書かせていただくと、
取得できた部分を表示するサンプル(前回の添付ファイル)では、実行した時に
hogehoge/RTComponent.rtc
もしくは
hogehoge
RTComponent.rtc
というように表示したいものが、
hogehoge
という部分しか取得できない現象が起こってしまったことをいっていました。
(resolveするためのネーミングサーバに登録されているコンポーネント名
 の取得ができないというのが実状です)

null文字の関係で、RTC::CorbaNamingクラスで分解させないといけないのか、
表示方法が間違えていることが原因だとは思うのですが、
うまく動作してくれなかったために、お聞きすることにしました。

__________________________________________________________________
Takashi KOJIMA

Kunii labratory ,Chuo University

ADDRESS: 1-13-27, Kasuga, Bunkyo-ku, Tokyo, 112-8551
Phone : +81-3-3817-1866 (Lab)
FAX : +81-3-3817-1847 (Subject-of-study preparation room)
E-Mail : takashi @ hmsl.elect.chuo-u.ac.jp , tkjim48 @ gmail.com
__________________________________________________________________



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