# # $Id$ # $HeadURL$ # $Author$ # INCLUDE(MacroRTIDDSGen) INCLUDE(MacroCodeGenIdl) SET(xml_FILE whg_service.xml) # # --- Library svcWhgCommon -------------------------------------------------------------------------------- # SET(SRCS_common whg_export.h logger.cpp logger.h ) # Generate whg_enums.idl / whg.idl CODEGEN_IDL_SVC(SRCS_common ${xml_FILE}) # Generate whg_db_impl.cpp/.h, whg_db.h CODEGEN_DATABASE(SRCS_common ${xml_FILE}) # Generate *.cpp/*.hpp from idl RTIDDSGEN(SRCS_common whg_enums.idl) RTIDDSGEN(SRCS_common whg.idl) # Generate whg_dt[s,c]_types.h, whg_ft[s,c]_types.h CODEGEN_TOPIC_TYPEDEFS(SRCS_common ${xml_FILE}) # Generate whg_[d|f]tc.h CODEGEN_CLIENT_TOPICS_IFC(SRCS_common ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV WS svcWhgCommon SHARED ${SRCS_common}) NGL_TARGET_INCLUDE_DIRECTORIES(svcWhgCommon PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcWhgCommon PRIVATE RTI::nddscpp2 PUBLIC Qt5::Core ddscore NGLLogger ngldb ) NGL_INSTALL_TARGET(svcWhgCommon) # # --- Library svcWhgClient -------------------------------------------------------------------------------- # SET(SRCS_client whg_export.h ) # generate whg_[d|f]tc.h, whg_[d|f]tc_impl.[cpp|h] CODEGEN_CLIENT_TOPICS_IMPL(SRCS_client ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV WS svcWhgClient SHARED ${SRCS_client}) NGL_TARGET_INCLUDE_DIRECTORIES(svcWhgClient PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcWhgClient PRIVATE RTI::nddscpp2 ddsconnector PUBLIC svcWhgCommon ddsftc ) NGL_INSTALL_TARGET(svcWhgClient) # # --- Library svcWhgServer -------------------------------------------------------------------------------- # SET(SRCS_server whg_export.h ) # generate whg_[d|f]ts.h, whg_[d|f]ts_impl.[cpp|h] CODEGEN_SERVER_TOPICS(SRCS_server ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV svcWhgServer SHARED ${SRCS_server}) NGL_TARGET_INCLUDE_DIRECTORIES(svcWhgServer PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcWhgServer PRIVATE RTI::nddscpp2 ddsconnector ddsfts PUBLIC svcWhgCommon ngldb ) NGL_INSTALL_TARGET(svcWhgServer) # # --- Topic Type Plugin -------------------------------------------------------------- # CREATE_TOPIC_TYPE_PLUGIN(${xml_FILE}) # # --- Executable svcWarehouseGuez (sWHG) ------------------------------------------------- # SET(SRCS_exe main.cpp main_handler.cpp main_handler.h dds_handler.cpp dds_handler.h handler_equipment_type_wh.cpp handler_equipment_type_wh.h handler_injury_model.cpp handler_injury_model.h handler_types.cpp handler_types.h object_equipment_type_wh.cpp object_equipment_type_wh.h object_injury_model.cpp object_injury_model.h settings.cpp settings.h WsBaseDataInterface/data_manager.cpp WsBaseDataInterface/data_manager.h WsBaseDataInterface/Messages/client_message.cpp WsBaseDataInterface/Messages/client_message.h WsBaseDataInterface/Messages/reply_message.cpp WsBaseDataInterface/Messages/reply_message.h WsBaseDataInterface/ws_base_data_interface_handler.cpp WsBaseDataInterface/ws_base_data_interface_handler.h WsBiteInterface/Connection/client_connection.cpp WsBiteInterface/Connection/client_connection.h WsBiteInterface/Connection/connection_handler.cpp WsBiteInterface/Connection/connection_handler.h WsBiteInterface/json_keys.h WsBiteInterface/bite_data_manager.cpp WsBiteInterface/bite_data_manager.h WsBiteInterface/Messages/ws_client_message.cpp WsBiteInterface/Messages/ws_client_message.h WsBiteInterface/Messages/message_handler.cpp WsBiteInterface/Messages/message_handler.h WsBiteInterface/Messages/message_transmitter.h WsBiteInterface/Messages/ws_reply_message.cpp WsBiteInterface/Messages/ws_reply_message.h WsBiteInterface/ws_bite_interface_handler.cpp WsBiteInterface/ws_bite_interface_handler.h ${xml_FILE} ) # Generate whg.sql, whg.xml CODEGEN_SQL(SRCS_exe ${xml_FILE}) NGL_ADD_SVC_ICON(SRCS_exe) NGL_ADD_EXECUTABLE(AAR SV svcWarehouseGuez ${SRCS_exe}) NGL_TARGET_LINK_LIBRARIES(svcWarehouseGuez Qt5::Core Qt5::Network svcCoreClient svcWhgCommon svcWhgServer ddsconnector nglsettings ProjectConfig LtsCommandLineParser LtsWebSocketServer NGLLogger nglcoreapplication ngltools codegen_base wms_json_ds svcPpmClient svcTabClient ) NGL_INSTALL_TARGET(svcWarehouseGuez) NGL_INSTALL(AAR SV FILES log4cxx_whg.props DESTINATION bin) NGL_ADD_TARGET_LINK(svcWarehouseGuez sWHG) # Uncomment if necessary #ADD_SUBDIRECTORY(UnitTests) ADD_SUBDIRECTORY(ModuleTests)