[openrtm-users 01424] Re: IDLのmodule定義を使うとimplコードがコンパイル不可

栗原眞二 shinji.kurihara @ aist.go.jp
2010年 9月 30日 (木) 23:11:13 JST


株式会社リバスト 菅様

産総研 栗原です。
いつもお世話になっております。
IDL定義にてmoduleを使用してインターフェースを定義した場合に、生成される
コードにmoduleが含まれない件につきましては、既に修正済みですので、
お手数ですが、以下からツールのプラグインをダウンロードし、eclipse/plugins
にあるjp.go.aist.から始まるファイルをダウンロードしたものと置き換えてご使用
頂けますでしょうか。

http://www.openrtm.org/pub/OpenRTM-aist/dailybuild/tools/1.0.0/



> 現在インストールされているOpenRTMの正確なバージョン
> (ビルド番号など)を確認する方法はありますか?

現状では、1.0.0から0.4.Xかを確認する事はできますが、ビルド番号までは確認
する事ができません。


> エラーを報告するのにすこし不便です.
> できればインストールされるフォルダに,
> READMEやVersion.txtなどを入れていただけるとありがたいです.

おっしゃる通りです。
いつ作成されたバージョンのものなのかがわかった方がサポートもしやすいです
ので、検討させて頂きます。


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



2010年9月30日10:36 ysuga <ysuga @ pop07.odn.ne.jp>:

> 株式会社リバストの菅です.
> お世話になっております.
>
> OpenRTM-aist 1.0RELEASE C++版
> (OpenRTM-aist-1.0.0-RELEASE_vc9_100212.msiでインストール)
> を使っています.
> OSはWindows (XP, Vista, 7)です.
>
> サービスポートを使用するときに,
> IDLを記述しますが,ネームスペースを使いたいので
> module定義を使っています.
>
> しかしながら,rtc-templateが生成する
> **_impl.cppなどの実装コードに問題があるため,
> そのままではコンパイルが通りません.
> (既出ならすみません)
>
>
> 詳細:
> 以下のようにIDLを記述します.
>
> module Amod {
>        struct hoge {
>                long a1;
>                long a2;
>        };
>
>        interface hogehoge {
>                long operation(out hoge arg);
>        };
> };
>
> すると,生成されるimplクラスのコードが,たとえばヘッダーでは
>
> hogehogeSVC_impl.h
>
> class hogehogeSVC_impl
> ・・・中略
>        CORBA::Long operation(hoge& arg);
>
> };
>
> のようになります.
> この場合,hogeという構造体は,
> Amodというモジュール内で宣言されているので,
> AmodというC++の名前空間内に定義されるのですが,
> hogehogeSVC_implクラスは,Amod名前空間外に宣言されているので,
> 本来であれば,operationというメソッドは,
>
> 誤       CORBA::Long operation(hoge& arg);
> 正       CORBA::Long operation(Amod::hoge& arg);
>
> とされるべきではないでしょうか?
> ヘッダーにもCPPにも同様の変更を加えねばならず不便です.
> おそらくはrtc-templateの変更が必要になると思います.
>
> IDLと,生成されたimplクラスのヘッダーとCPPコードを添付します.
> ご確認ください.
>
>
> それでは
>
>
> P.S.
> 現在インストールされているOpenRTMの正確なバージョン
> (ビルド番号など)を確認する方法はありますか?
> エラーを報告するのにすこし不便です.
> できればインストールされるフォルダに,
> READMEやVersion.txtなどを入れていただけるとありがたいです.
>
> --
> //////////////////////////////////////////////
> 菅 佑樹 (すが ゆうき)
> E-mail: ysuga @ ysuga.net
> 研究者関連: http://www.ysuga.net/research
> ロボット関連: http://www.ysuga.net/robot
> インラインスケート: http://www.ysuga.net/inline
>
> おしらせ: RTミドルウエアやってます
>  http://www.ysuga.net/robot/rtm
> /////////////////////////////////////////////
>
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://www.openrtm.org/pipermail/openrtm-users/attachments/20100930/95aa6860/attachment-0001.html>


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