# # $Id$ # $HeadURL$ # $Author$ # INCLUDE(MacroRTIDDSGen) INCLUDE(MacroCodeGenIdl) SET(xml_FILE esc_service.xml) # # --- Library svcEscCommon -------------------------------------------------------------------------------- # SET(SRCS_common esc_export.h logger.cpp logger.h ) # Generate esc_enums.idl / esc.idl CODEGEN_IDL_SVC(SRCS_common ${xml_FILE}) # Generate esc_db_impl.cpp/.h, esc_db.h CODEGEN_DATABASE(SRCS_common ${xml_FILE}) # Generate *.cpp/*.hpp from idl RTIDDSGEN(SRCS_common esc_enums.idl) RTIDDSGEN(SRCS_common esc.idl) # Generate esc_dt[s,c]_types.h, esc_ft[s,c]_types.h CODEGEN_TOPIC_TYPEDEFS(SRCS_common ${xml_FILE}) # Generate esc_[d|f]tc.h CODEGEN_CLIENT_TOPICS_IFC(SRCS_common ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV WS svcEscCommon SHARED ${SRCS_common}) NGL_TARGET_INCLUDE_DIRECTORIES(svcEscCommon PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcEscCommon PRIVATE RTI::nddscpp2 PUBLIC Qt5::Core svcEsmCommon ddscore ngldb NGLLogger ) NGL_INSTALL_TARGET(svcEscCommon) # # --- Library svcEscClient -------------------------------------------------------------------------------- # SET(SRCS_client esc_export.h ) # generate esc_[d|f]tc.h, esc_[d|f]tc_impl.[cpp|h] CODEGEN_CLIENT_TOPICS_IMPL(SRCS_client ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV WS svcEscClient SHARED ${SRCS_client}) NGL_TARGET_INCLUDE_DIRECTORIES(svcEscClient PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcEscClient PRIVATE RTI::nddscpp2 ddsconnector PUBLIC svcEscCommon ddsftc ) NGL_INSTALL_TARGET(svcEscClient) # # --- Library svcEscServer -------------------------------------------------------------------------------- # SET(SRCS_server esc_export.h ) # generate esc_[d|f]ts.h, esc_[d|f]ts_impl.[cpp|h] CODEGEN_SERVER_TOPICS(SRCS_server ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV svcEscServer SHARED ${SRCS_server}) NGL_TARGET_INCLUDE_DIRECTORIES(svcEscServer PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcEscServer PRIVATE RTI::nddscpp2 ddsconnector ddsfts ngldb PUBLIC svcEscCommon ) NGL_INSTALL_TARGET(svcEscServer) # # --- Topic Type Plugin -------------------------------------------------------------- # CREATE_TOPIC_TYPE_PLUGIN(${xml_FILE}) # # --- Executable svcEffectShowClient (sESC) ------------------------------------------------- # SET(SRCS_exe esc_helper.h main.cpp main_handler.cpp main_handler.h handler_order.cpp handler_order.h handler_operating_condition.cpp handler_operating_condition.h handler_firing_explosion.cpp handler_firing_explosion.h handler_firing_smoke.cpp handler_firing_smoke.h handler_tab_data.cpp handler_tab_data.h handler_vehicle.cpp handler_vehicle.h object_order.cpp object_order.h esc_convert_from_tab.cpp esc_convert_from_tab.h esc_convert_to_tab.cpp esc_convert_to_tab.h dds_handler.cpp dds_handler.h settings.cpp settings.h ${xml_FILE} connection_handler.h connection_handler.cpp connection_handler_serial.h connection_handler_serial.cpp connection_handler_tcp.h connection_handler_tcp.cpp control_unit_handler.h control_unit_handler.cpp ) # Generate esc.sql, esc.xml CODEGEN_SQL(SRCS_exe ${xml_FILE}) NGL_ADD_SVC_ICON(SRCS_exe) NGL_ADD_EXECUTABLE(AAR SV svcEffectShowClient ${SRCS_exe}) NGL_TARGET_LINK_LIBRARIES(svcEffectShowClient Qt5::Core Qt5::SerialPort Qt5::Network svcEscCommon svcEscServer svcCoreClient svcTabClient svcAsmClient svcNomClient svcEsmServer ddsconnector nglsettings ProjectConfig LtsCommandLineParser LtsSerialPortQuerry NGLLogger LtsUtilsCore nglcoreapplication ngltools ) NGL_INSTALL_TARGET(svcEffectShowClient) NGL_INSTALL(AAR SV FILES log4cxx_esc.props DESTINATION bin) NGL_ADD_TARGET_LINK(svcEffectShowClient sESC) # Uncomment if necessary #ADD_SUBDIRECTORY(UnitTests) #ADD_SUBDIRECTORY(ModuleTests)