[openrtm-staff:1030] Re: サービスポートを持つRTCのコード生成時に出るエラー対応について

河内のぶ n.kawauchi @ aist.go.jp
2017年 10月 13日 (金) 10:24:42 JST


坂本様

河内です
お手数をおかけしております。

ご指摘頂いた点ですが、tao/orb.idlのみと限定しても同様でしょうか。
インクルードしているのに見つからないidlがtao/orb.idlの場合のみ、
エラーメッセージを出しつつコードは生成するという動作です。

tao/orb.idlのifdef定義が追加されたのは最近のことなので、taoを利用して
いないRTCにとっては、このチェックを回避できれば、あとの処理は今まで通
りでよいとの認識です。

こちらの動作環境をお伝えしておりませんでした。
OpenRTM-aist 1.2.0 32bit 10/6版を使っております。
http://staging.openrtm.org/pub/Windows/OpenRTM-aist/1.2.0/OpenRTM-aist-1.2.0-RELEASE_x86.msi

以上、よろしくお願いいたします。

On Fri, 13 Oct 2017 09:43:37 +0900
Sakamoto Takeshi <sakamoto @ globalassist.co.jp> wrote:

> 河内 様
> 
> 
> いつもお世話になっております.
> グローバルアシストの坂本です.
> 
> ご連絡ありがとうございます.
> 
> まず現状のRTCBでは,IDLファイルのインクルードファイルにつきましては,
> 1つ上のインクルードファイルしか見ていません.
> > CalibrationService.idl ⇒ InterfaceDataTypes.idl ⇒ BasicDataType.idl
> こちらの例ですと,CalibrationService.idl ⇒ InterfaceDataTypes.idlしか見ておりません.
> ただ,今回はInterfaceDataTypes.idl, BasicDataType.idlが標準で解析対象のIDLと
> なっているため,解析が行われたと思います.
> 
> > RTCBuilder側でこのifdefの判断は出来ないと思われます。
> > includeしているファイルが存在しない場合、エラーメッセージはこれまで通り
> > 出力しつつもコードは生成するという対応をお願いしたいと考えています。
> > エラーを無視してコード生成した場合、困るケースはございますでしょうか。
> こちらのお話なのですが,結構,対応は難しいように思います.
> 
> 例えば,includeしているファイル側で,何らかのデータ型を定義しており,
> 実際に使用しているIDLでこの定義された型を使用していた場合には,
> どのようなコードを生成すれば良いのでしょうか?
> (単純に引数のin/outと,指定されたデータ型の名称のみを使用して
>  コード生成する形でしょうか?
>  ただ,この場合ですと,typedefされているのか,structで定義されているのか,が
>  判断できないように思います)
> 
> よろしくお願いいたします.
> 
> > 河内です
> > お世話になっております。
> > 
> > サービスポートを持つRTCのコード生成時、エラーが出てコードが生成され
> > ない状況です。この対応をRTCBuilder側でお願いしたく、ご相談させて下さい。
> > 
> > エラー内容は下記です。
> > 「Include of IDL 'tao/orb.idl' cannot be solved.」
> > 
> > 動作確認は、ImageProcessingの中のImageCalibrationのIDLファイルを使って
> > います。
> > http://svn.openrtm.org/ImageProcessing/trunk/ImageProcessing/opencv/components/ImageCalibration/CalibrationService.idl
> > 
> > CalibrationService.idl ⇒ InterfaceDataTypes.idl ⇒ BasicDataType.idl
> > 
> > 別のidlをインクルードしていて、最終的にBasicDataType.idlの中でtaoを
> > インクルードしています。taoのidlが見つからないということでこのエラーが
> > 出ているようです。
> > -----
> > #ifdef TAO_IDL
> > #include <tao/orb.idl>
> > #endif
> > -----
> > 
> > RTCBuilder側でこのifdefの判断は出来ないと思われます。
> > includeしているファイルが存在しない場合、エラーメッセージはこれまで通り
> > 出力しつつもコードは生成するという対応をお願いしたいと考えています。
> > エラーを無視してコード生成した場合、困るケースはございますでしょうか。
> > 
> > ご検討頂きたく、よろしくお願いいたします。
> > 
> > ---------------------------------------------------
> > 河内 のぶ  n.kawauchi @ aist.go.jp
> > 産業技術総合研究所 ロボットイノベーション研究センター
> > ロボットソフトウエアプラットフォーム研究チーム
> > テクニカルスタッフ
> > 
> > 
> 
> 
> -----------
> 株式会社 グローバルアシスト
> 坂本 武志
> sakamoto @ globalassist.co.jp




More information about the openrtm-staff mailing list