Closed n-ando closed 4 months ago
Java RTCで次の修正をお願いします。C++とPythonのRTCの場合は今のところ問題ありません。
独自データ型を使用しているRTCのcpack処理での不具合
set(EXEC_FILES ""
${CLASS_FILES_DIR}/${PROJECT_NAME}.class
${CLASS_FILES_DIR}/${PROJECT_NAME}Comp.class
${CLASS_FILES_DIR}/${PROJECT_NAME}Impl.class
)
file(GLOB IDL_FILES "${CMAKE_CURRENT_SOURCE_DIR}/idl/*.idl") ★追加
:
install(FILES ${OTHER_SRCS} DESTINATION ${INSTALL_PREFIX}
COMPONENT component)
if(IDL_FILES) ★追加ここから install(FILES ${IDL_FILES} DESTINATION ${INSTALL_PREFIX}/idl COMPONENT component) endif(IDL_FILES) ★追加ここまで
独自データ型のサービスポートを定義している場合でのビルドエラー対応
ManipulatorCommonInterface_Middle型のサービスポートを持つサービスプロバイダでのビルドエラー対応 https://github.com/Nobu19800/testOpenRTM-aist/tree/master/testServiceProviderjava
onInitialize()関数のtry文でビルドエラーになるので、コメントアウトした状態でコード生成する
protected ReturnCode_t onInitialize() {
// try {
// } catch (ServantAlreadyActive e) {
// e.printStackTrace();
// } catch (WrongPolicy e) {
// e.printStackTrace();
// } catch (ObjectNotActive e) {
// e.printStackTrace();
// }
// Set service consumers to Ports
m_ManipulatorCommonInterface_MiddlePortPort.registerConsumer(...
また、独自データ型利用に関わらずワーニングが出ていますので、この対応もお願いします。
List<String> mgrargs = new ArrayList();
↓
List<String> mgrargs = new ArrayList<String>();
Is your feature request related to a problem? Please describe. 独自データ型のデータポートを追加する際、現在RTCBが生成するコードでは手作業による修正が必要となる。
Describe the solution you'd like 独自データ型のデータポートを追加する際にも、生成されるソースコードやCMakeList.txtなどが適切に設定されるようにする。
Describe alternatives you've considered 特になし。
Additional context 独自データ型を定義するIDLは開発者が別途作成して提供するものとする。