[openrtm-users 02869] Re: コンポーネントのテンプレートの設定方法

Ando Noriaki n-ando @ aist.go.jp
2013年 8月 14日 (水) 19:14:10 JST


安藤です

RTCBuilderはテンプレートエンジンにVelocityを使っています。
http://velocity.apache.org/

テンプレートの実体はこちらになります。
http://svn.openrtm.org/rtmtools/trunk/rtmtools/jp.go.aist.rtm.rtcbuilder/src/jp/go/aist/rtm/rtcbuilder/template/cpp/CXX_RTC.h.vsl
そのほかのソースのテンプレートは
http://svn.openrtm.org/rtmtools/trunk/rtmtools/jp.go.aist.rtm.rtcbuilder/src/jp/go/aist/rtm/rtcbuilder/template/cpp/
になります。

テンプレート自体はRTCBuilderのバイナリに埋め込まれているので
テンプレートを書き換えて再コンパイルする必要があります。
RTCBuilderのコンパイル自体はLinuxであれば比較的簡単です。

OpenCVなどよくつかわれるライブラリなどは、RTCBuilderの段階で
指定するとCMakeやヘッダに必要なものを追加してくれる機能などは
あると便利かもしれませんね。


2013年7月5日 17:46 urabe <k_urabe @ hi.is.uec.ac.jp>:
> 電気通信大学大学院の占部と申します.
>
> RTCbuilderの「コード生成」ボタンを押下して生成される
> c/c++コードの変更方法について教えていただけませんでしょうか.
>
> 現在,OpenCVを使用したコンポーネントを下記サイトを参考に作成しています.
> http://www.openrtm.org/openrtm/ja/node/5286
> 現状では手作業で,
> #include<cv.h>
> #include<cxcore.h>
> #include<highgui.h>
> を生成されたヘッダファイルに書き込んでいます.しかし,私が作成する
> コンポーネントはすべてOpenCVを使用するので,手作業での #include 追加を
> 自動化したいと考えています.
>
> 同様に,「コード生成」で生成される CMakeLists.txt に対しても,
> find_package(OpenCV REQUIRED) の追加,
> 2か所あるtarget_link_libraries に ${OpenCV_LIBS} の追加を手作業で行って
> います.
>
> 私は,RTCBuilderが何らかのテンプレートを参照し,それを元に c/c++ コードを
> 作成していると予想しています.もしそうであれば,RTCBuilder が参照している
> テンプレートを編集(数行の #include や find_package の追加)すれば
> 一連の手作業が自動化できるのではないかと期待しています.
>
> 当方でもいろいろ調べてみたのですが,残念ながらどうしてよいのかわかりませ
> んでした.
>
> RTCBuilderのテンプレートの場所や設定方法など,ご存知の方いらっしゃいまし
> たら,ご教示いただけないでしょうか.よろしくお願いします.
> _______________________________________________
> openrtm-users mailing list
> openrtm-users @ openrtm.org
> http://www.openrtm.org/mailman/listinfo/openrtm-users


More information about the openrtm-users mailing list