diff --git a/gui/CMakeLists.txt b/gui/CMakeLists.txt index b4de61c31c8f82cd6008af8a6487066cfbe83b7f..faff12688835da9c3b99b5b30dd708071ca2a4ec 100644 --- a/gui/CMakeLists.txt +++ b/gui/CMakeLists.txt @@ -1,6 +1,7 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. # * Copyright (c) 2020, 2021 ITK Engineering GmbH. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -15,6 +16,7 @@ cmake_minimum_required(VERSION 3.14) set(CMAKE_POSITION_INDEPENDENT_CODE ON) add_subdirectory(application) +add_subdirectory(common) #add_subdirectory(plugins/agentConfiguration) add_subdirectory(plugins/component) add_subdirectory(plugins/pcmEvaluation) diff --git a/gui/application/CMakeLists.txt b/gui/application/CMakeLists.txt index 5d783fd73e0f8e093c57fe9cc6785e210dae8850..ab9df26b7d327f502d0637242ac2d73da7031bae 100644 --- a/gui/application/CMakeLists.txt +++ b/gui/application/CMakeLists.txt @@ -1,6 +1,8 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. # * Copyright (c) 2021 ITK Engineering GmbH. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) +# * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 # * which is available at https://www.eclipse.org/legal/epl-2.0/ @@ -31,22 +33,26 @@ include_directories(Interfaces) include_directories(${Qt5Widgets_INCLUDE_DIRS}) # include interfaces, models and views -add_subdirectory(Interfaces) add_subdirectory(Models) -# include sources and headers -set(SOURCES openPASS.cpp) set(RC_ICONS openPASS.rc) - -# declare target library -add_executable(openPASS WIN32 ${SOURCES} ${RC_ICONS}) - -# link with Qt libraries, models, views and Interfaces -target_link_libraries(openPASS PRIVATE - Qt5::Widgets - ${PROJECT_NAME}_Models - ${PROJECT_NAME}_Interfaces) - -install(TARGETS openPASS - RUNTIME DESTINATION ${INSTALL_BIN_DIR}) +add_openpass_target( + NAME openPASS TYPE executable COMPONENT gui + + HEADERS + Interfaces/openPASS/PluginInterface.h + Interfaces/openPASS/PluginManagerInterface.h + Interfaces/openPASS/RandomInterface.h + Interfaces/openPASS/ServiceInterface.h + Interfaces/openPASS/ServiceManagerInterface.h + Interfaces/openPASS/ioplugininterface.h + + SOURCES + openPASS.cpp + ${RC_ICONS} + + LIBRARIES + Qt5::Widgets + ${PROJECT_NAME}_Models +) \ No newline at end of file diff --git a/gui/application/Interfaces/CMakeLists.txt b/gui/application/Interfaces/CMakeLists.txt deleted file mode 100644 index 98ff5bafdc3a0be64e8de0b598fdf2bb800f49ff..0000000000000000000000000000000000000000 --- a/gui/application/Interfaces/CMakeLists.txt +++ /dev/null @@ -1,18 +0,0 @@ -# /********************************************************************* -# * Copyright (c) 2019 Volkswagen Group of America. -# * -# * This program and the accompanying materials are made -# * available under the terms of the Eclipse Public License 2.0 -# * which is available at https://www.eclipse.org/legal/epl-2.0/ -# * -# * SPDX-License-Identifier: EPL-2.0 -# **********************************************************************/ - -# define headers variable -set(HEADERS "") - -# include all interface headers -include(openPASS/CMakeLists.txt) - -# build interface libraries -add_library(${PROJECT_NAME}_Interfaces STATIC ${HEADERS}) diff --git a/gui/application/Interfaces/openPASS/CMakeLists.txt b/gui/application/Interfaces/openPASS/CMakeLists.txt deleted file mode 100644 index ec81fc196f91914adbd007b90f06e1d12093a97d..0000000000000000000000000000000000000000 --- a/gui/application/Interfaces/openPASS/CMakeLists.txt +++ /dev/null @@ -1,18 +0,0 @@ -# /********************************************************************* -# * Copyright (c) 2019 Volkswagen Group of America. -# * -# * This program and the accompanying materials are made -# * available under the terms of the Eclipse Public License 2.0 -# * which is available at https://www.eclipse.org/legal/epl-2.0/ -# * -# * SPDX-License-Identifier: EPL-2.0 -# **********************************************************************/ - -set(HEADERS - ${HEADERS} - ${CMAKE_CURRENT_LIST_DIR}/PluginInterface.h - ${CMAKE_CURRENT_LIST_DIR}/PluginManagerInterface.h - ${CMAKE_CURRENT_LIST_DIR}/RandomInterface.h - ${CMAKE_CURRENT_LIST_DIR}/ServiceInterface.h - ${CMAKE_CURRENT_LIST_DIR}/ServiceManagerInterface.h - ${CMAKE_CURRENT_LIST_DIR}/ioplugininterface.h) diff --git a/gui/application/Models/CMakeLists.txt b/gui/application/Models/CMakeLists.txt index 827fb3045ad973bc9f1f3f4bf5007a5455593e10..341c4745c449a34e9ef7ccfb14946e9abc896c0e 100644 --- a/gui/application/Models/CMakeLists.txt +++ b/gui/application/Models/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -11,12 +12,12 @@ set(SOURCES PluginManagerModel.cpp ServiceManagerModel.cpp - ) +) set(HEADERS PluginManagerModel.h ServiceManagerModel.h - ) +) add_library(${PROJECT_NAME}_Models STATIC ${SOURCES} ${HEADERS}) diff --git a/gui/common/CMakeLists.txt b/gui/common/CMakeLists.txt index eccb9cc670b22db5a1274c12909027827dbea8cb..1136bbde4cfd4a2d59a0799c1f81924a64510c1f 100644 --- a/gui/common/CMakeLists.txt +++ b/gui/common/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -7,3 +8,103 @@ # * # * SPDX-License-Identifier: EPL-2.0 # **********************************************************************/ + +find_package(Qt5 COMPONENTS Core Widgets Xml Sql REQUIRED) + +set(SOURCES + pcm/PCM_Data/pcm_agent.cpp + pcm/PCM_Data/pcm_line.cpp + pcm/PCM_Data/pcm_marks.cpp + pcm/PCM_Data/pcm_point.cpp + pcm/PCM_Data/pcm_trajectory.cpp + pcm/PCM_Data/pcm_globalData.cpp + pcm/PCM_Data/pcm_course.cpp + pcm/PCM_Data/pcm_lineContainer.cpp + pcm/PCM_Data/pcm_object.cpp + pcm/PCM_Data/pcm_pointContainer.cpp + pcm/PCM_Data/pcm_viewObject.cpp + pcm/PCM_Data/pcm_data.cpp + pcm/PCM_Data/pcm_initialValues.cpp + pcm/PCM_Data/pcm_lineSegment.cpp + pcm/PCM_Data/pcm_participantData.cpp + pcm/PCM_Data/pcm_simulationSet.cpp + + pcm/PCM_Importer/scenarioImporterPCM.cpp + pcm/PCM_Importer/sceneryImporterPCM.cpp + pcm/PCM_Importer/vehicleModelImporter.cpp + + DelegateDoubleView.cpp + Plot.cpp + WidgetView.cpp + CenteredTextItem.cpp + Graph.cpp + RowHistograms.cpp + DelegateTimeView.cpp + PlotAxes.cpp + DelegateComboBoxView.cpp + Histogram.cpp + TableModel.cpp + PlotGraphicsItem.cpp +) + +set(HEADERS + pcm/DataStructuresBase/XmlBaseClass.h + pcm/DataStructuresBase/XmlBaseTypes.h + + pcm/PCM_Data/pcm_definitions.h + pcm/PCM_Data/pcm_agent.h + pcm/PCM_Data/pcm_line.h + pcm/PCM_Data/pcm_marks.h + pcm/PCM_Data/pcm_point.h + pcm/PCM_Data/pcm_trajectory.h + pcm/PCM_Data/pcm_course.cpp + pcm/PCM_Data/pcm_globalData.h + pcm/PCM_Data/pcm_course.h + pcm/PCM_Data/pcm_helper.h + pcm/PCM_Data/pcm_lineContainer.h + pcm/PCM_Data/pcm_object.h + pcm/PCM_Data/pcm_pointContainer.h + pcm/PCM_Data/pcm_viewObject.h + pcm/PCM_Data/pcm_data.h + pcm/PCM_Data/pcm_initialValues.h + pcm/PCM_Data/pcm_lineSegment.h + pcm/PCM_Data/pcm_participantData.h + pcm/PCM_Data/pcm_simulationSet.h + + pcm/PCM_Importer/scenarioImporterPCM.h + pcm/PCM_Importer/sceneryImporterPCM.h + pcm/PCM_Importer/vehicleModelImporter.h + + GUI_Definitions.h + PlotGraphicsItem.h + DelegateDoubleView.h + Plot.h + WidgetView.h + CenteredTextItem.h + Graph.h + RowHistograms.h + DelegateTimeView.h + PlotAxes.h + DelegateComboBoxView.h + EditDataCommand.h + Histogram.h + TableModel.h +) + +include_directories(../../sim/src/common) +include_directories(../../sim/src) +include_directories(${Qt5Widgets_INCLUDE_DIRS}) +include_directories(${Qt5Xml_INCLUDE_DIRS}) +include_directories(${Qt5Sql_INCLUDE_DIRS}) +include_directories(pcm/DataStructuresBase) +include_directories(pcm/PCM_Data) +include_directories(pcm/PCM_Importer) + +add_library(Gui_Common STATIC ${SOURCES} ${HEADERS}) + +target_link_libraries(Gui_Common PRIVATE + Qt5::Widgets + Qt5::Core + Qt5::Xml + Qt5::Sql +) \ No newline at end of file diff --git a/gui/plugins/component/CMakeLists.txt b/gui/plugins/component/CMakeLists.txt index da8d518b17cdbd3282839d33715795c3874d5eaf..84f67cae8769ef327be5ad411f55973c47a69d0d 100644 --- a/gui/plugins/component/CMakeLists.txt +++ b/gui/plugins/component/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -27,26 +28,30 @@ include_directories(../../application/Interfaces) include_directories(${Qt5Widgets_INCLUDE_DIRS}) # include interfaces, models and views -add_subdirectory(Interfaces) add_subdirectory(Models) -# include sources and headers -set(SOURCES ComponentPlugin.cpp) -set(HEADERS ComponentPlugin.h) - -# declare target library -add_library(Component SHARED ${SOURCES} ${HEADERS}) - -# link with Qt libraries, models, views and Interfaces -target_link_libraries(Component PRIVATE - Qt5::Widgets - ${PROJECT_NAME}_Models - ${PROJECT_NAME}_Interfaces) - -if(WIN32) - install(TARGETS Component - RUNTIME DESTINATION ${SUBDIR_LIB_GUI}) -elseif(UNIX) - install(TARGETS Component - LIBRARY DESTINATION ${SUBDIR_LIB_GUI}) -endif() +add_openpass_target( + NAME Component TYPE library LINKAGE shared COMPONENT gui + + HEADERS + Interfaces/openPASS-Component/ComponentInputItemInterface.h + Interfaces/openPASS-Component/ComponentInputMapInterface.h + Interfaces/openPASS-Component/ComponentInterface.h + Interfaces/openPASS-Component/ComponentItemInterface.h + Interfaces/openPASS-Component/ComponentMapInterface.h + Interfaces/openPASS-Component/ComponentOutputItemInterface.h + Interfaces/openPASS-Component/ComponentOutputMapInterface.h + Interfaces/openPASS-Component/ComponentParameterItemInterface.h + Interfaces/openPASS-Component/ComponentParameterMapInterface.h + Interfaces/openPASS-Component/ComponentScheduleInterface.h + Interfaces/openPASS-Component/ComponentTypedefItemInterface.h + Interfaces/openPASS-Component/ComponentTypedefMapInterface.h + ComponentPlugin.h + + SOURCES + ComponentPlugin.cpp + + LIBRARIES + Qt5::Widgets + ${PROJECT_NAME}_Models +) \ No newline at end of file diff --git a/gui/plugins/component/Interfaces/CMakeLists.txt b/gui/plugins/component/Interfaces/CMakeLists.txt deleted file mode 100644 index c3ec3de48b4afc6b02c42731248991d284be9877..0000000000000000000000000000000000000000 --- a/gui/plugins/component/Interfaces/CMakeLists.txt +++ /dev/null @@ -1,17 +0,0 @@ -# /********************************************************************* -# * Copyright (c) 2019 Volkswagen Group of America. -# * -# * This program and the accompanying materials are made -# * available under the terms of the Eclipse Public License 2.0 -# * which is available at https://www.eclipse.org/legal/epl-2.0/ -# * -# * SPDX-License-Identifier: EPL-2.0 -# **********************************************************************/ - -set(HEADERS "") - -# build all Interface libraries -include(openPASS-Component/CMakeLists.txt) - -# bundle all libraries to one interface library -add_library(${PROJECT_NAME}_Interfaces STATIC ${HEADERS}) diff --git a/gui/plugins/component/Interfaces/openPASS-Component/CMakeLists.txt b/gui/plugins/component/Interfaces/openPASS-Component/CMakeLists.txt deleted file mode 100644 index 3646040c99312b3815865ef7a315c448308287b1..0000000000000000000000000000000000000000 --- a/gui/plugins/component/Interfaces/openPASS-Component/CMakeLists.txt +++ /dev/null @@ -1,24 +0,0 @@ -# /********************************************************************* -# * Copyright (c) 2019 Volkswagen Group of America. -# * -# * This program and the accompanying materials are made -# * available under the terms of the Eclipse Public License 2.0 -# * which is available at https://www.eclipse.org/legal/epl-2.0/ -# * -# * SPDX-License-Identifier: EPL-2.0 -# **********************************************************************/ - -set(HEADERS - ${HEADERS} - ${CMAKE_CURRENT_LIST_DIR}/ComponentInputItemInterface.h - ${CMAKE_CURRENT_LIST_DIR}/ComponentInputMapInterface.h - ${CMAKE_CURRENT_LIST_DIR}/ComponentInterface.h - ${CMAKE_CURRENT_LIST_DIR}/ComponentItemInterface.h - ${CMAKE_CURRENT_LIST_DIR}/ComponentMapInterface.h - ${CMAKE_CURRENT_LIST_DIR}/ComponentOutputItemInterface.h - ${CMAKE_CURRENT_LIST_DIR}/ComponentOutputMapInterface.h - ${CMAKE_CURRENT_LIST_DIR}/ComponentParameterItemInterface.h - ${CMAKE_CURRENT_LIST_DIR}/ComponentParameterMapInterface.h - ${CMAKE_CURRENT_LIST_DIR}/ComponentScheduleInterface.h - ${CMAKE_CURRENT_LIST_DIR}/ComponentTypedefItemInterface.h - ${CMAKE_CURRENT_LIST_DIR}/ComponentTypedefMapInterface.h) diff --git a/gui/plugins/component/Models/CMakeLists.txt b/gui/plugins/component/Models/CMakeLists.txt index f803c89e92c1a7699fb221736ab03f5ca61c5ff2..dfd86cd3400985a366a31d90331b52e54444fe7b 100644 --- a/gui/plugins/component/Models/CMakeLists.txt +++ b/gui/plugins/component/Models/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -24,8 +25,7 @@ set(SOURCES ${CMAKE_CURRENT_LIST_DIR}/ComponentXMLSaveModel.cpp ${CMAKE_CURRENT_LIST_DIR}/ComponentTypedefMapModel.cpp ${CMAKE_CURRENT_LIST_DIR}/ComponentTypedefItemModel.cpp - - ) +) set(HEADERS ${CMAKE_CURRENT_LIST_DIR}/ComponentInputItemModel.h @@ -43,7 +43,6 @@ set(HEADERS ${CMAKE_CURRENT_LIST_DIR}/ComponentXMLSaveModel.h ${CMAKE_CURRENT_LIST_DIR}/ComponentTypedefMapModel.h ${CMAKE_CURRENT_LIST_DIR}/ComponentTypedefItemModel.h - ) +) -add_library(${PROJECT_NAME}_Models STATIC ${SOURCES} ${HEADERS}) -target_link_libraries(${PROJECT_NAME}_Models PRIVATE Qt5::Widgets) +add_library(${PROJECT_NAME}_Models STATIC ${SOURCES} ${HEADERS}) \ No newline at end of file diff --git a/gui/plugins/pcmEvaluation/CMakeLists.txt b/gui/plugins/pcmEvaluation/CMakeLists.txt index 86632dbbd71e32016a912e655a9e3234038e307a..f1d5f861ec80ac7d2a45a89cca7946af2cfae14d 100644 --- a/gui/plugins/pcmEvaluation/CMakeLists.txt +++ b/gui/plugins/pcmEvaluation/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2021 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -21,7 +22,6 @@ find_package(Qt5 COMPONENTS Core Widgets Xml REQUIRED) # set include directories include_directories(.) -include_directories(Interfaces) include_directories(Models) include_directories(Presenters) include_directories(Views) @@ -36,36 +36,26 @@ include_directories(${Qt5Widgets_INCLUDE_DIRS}) include_directories(${Qt5Xml_INCLUDE_DIRS}) # include interfaces, models and views -add_subdirectory(Interfaces) add_subdirectory(Models) add_subdirectory(Presenters) add_subdirectory(Views) -# include headers and sources of this plugin -set(SOURCES PluginPcm_Eval.cpp) -set(HEADERS PluginPcm_Eval.h) - -# declare target library -add_library(Pcm_eval SHARED ${SOURCES} ${HEADERS} ) - -# include directory of lib 'window' -link_directories(${openPASS-Window_SOURCE_DIR}) - -# link with Qt libraries, models, views and Interfaces -target_link_libraries(Pcm_eval PRIVATE - Qt5::Widgets - Qt5::Core - Qt5::Xml - Window - ${PROJECT_NAME}_Models - ${PROJECT_NAME}_Views - ${PROJECT_NAME}_Interfaces - ${PROJECT_NAME}_Presenters) - -if(WIN32) - install(TARGETS Pcm_eval - RUNTIME DESTINATION ${SUBDIR_LIB_GUI}) -elseif(UNIX) - install(TARGETS Pcm_eval - LIBRARY DESTINATION ${SUBDIR_LIB_GUI}) -endif() +add_openpass_target( + NAME Pcm_eval TYPE library LINKAGE shared COMPONENT gui + + HEADERS + Interfaces/openPASS-PCM_Eval/PCM_Eval_Interface.h + PluginPcm_Eval.h + + SOURCES + PluginPcm_Eval.cpp + + LIBRARIES + Qt5::Widgets + Qt5::Core + Qt5::Xml + Window + ${PROJECT_NAME}_Models + ${PROJECT_NAME}_Views + ${PROJECT_NAME}_Presenters +) \ No newline at end of file diff --git a/gui/plugins/pcmEvaluation/Interfaces/CMakeLists.txt b/gui/plugins/pcmEvaluation/Interfaces/CMakeLists.txt deleted file mode 100644 index 8081434bd085b8667eb9bb4faa6a613dd4a44a53..0000000000000000000000000000000000000000 --- a/gui/plugins/pcmEvaluation/Interfaces/CMakeLists.txt +++ /dev/null @@ -1,15 +0,0 @@ -# /********************************************************************* -# * Copyright (c) 2020, 2021 ITK Engineering GmbH -# * -# * This program and the accompanying materials are made -# * available under the terms of the Eclipse Public License 2.0 -# * which is available at https://www.eclipse.org/legal/epl-2.0/ -# * -# * SPDX-License-Identifier: EPL-2.0 -# **********************************************************************/ - -# define headers variable -set(HEADERS "") - -# bundle all libraries to one interface library -add_library(${PROJECT_NAME}_Interfaces STATIC ${HEADERS}) diff --git a/gui/plugins/pcmEvaluation/Models/CMakeLists.txt b/gui/plugins/pcmEvaluation/Models/CMakeLists.txt index ddb41a5f7ab5bb02c6603cc53c241b76b4d1363b..4cbfe5dc9e6cf145ba86af0e7edb3ee9ca9e2da6 100644 --- a/gui/plugins/pcmEvaluation/Models/CMakeLists.txt +++ b/gui/plugins/pcmEvaluation/Models/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2021 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -9,40 +10,16 @@ # **********************************************************************/ set(SOURCES - ModelPcm_Eval.cpp - ResultDirItemModel.cpp - TrajectoryTableModel.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Importer/sceneryImporterPCM.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_agent.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_course.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_data.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_globalData.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_line.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_lineContainer.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_marks.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_object.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_point.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_pointContainer.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_trajectory.cpp - ) + ModelPcm_Eval.cpp + ResultDirItemModel.cpp + TrajectoryTableModel.cpp +) set(HEADERS - ModelPcm_Eval.h - ResultDirItemModel.h - TrajectoryTableModel.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Importer/sceneryImporterPCM.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_agent.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_course.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_data.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_globalData.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_line.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_lineContainer.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_marks.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_object.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_point.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_pointContainer.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_trajectory.h - ) + ModelPcm_Eval.h + ResultDirItemModel.h + TrajectoryTableModel.h +) add_library(${PROJECT_NAME}_Models STATIC ${SOURCES} ${HEADERS}) -target_link_libraries(${PROJECT_NAME}_Models PRIVATE Qt5::Xml) +target_link_libraries(${PROJECT_NAME}_Models PRIVATE Qt5::Xml Gui_Common) \ No newline at end of file diff --git a/gui/plugins/pcmEvaluation/Presenters/CMakeLists.txt b/gui/plugins/pcmEvaluation/Presenters/CMakeLists.txt index e2496ef79cae1c69493f72dadd15de0c8f513b04..1633a3fccc9d2630e7aa2506cab0e4368684cb59 100644 --- a/gui/plugins/pcmEvaluation/Presenters/CMakeLists.txt +++ b/gui/plugins/pcmEvaluation/Presenters/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2021 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -10,11 +11,10 @@ set(HEADERS ${CMAKE_CURRENT_LIST_DIR}/PresenterPcm_Eval.h - ) +) set(SOURCES ${CMAKE_CURRENT_LIST_DIR}/PresenterPcm_Eval.cpp - ) +) - -add_library(${PROJECT_NAME}_Presenters STATIC ${SOURCES} ${HEADERS}) +add_library(${PROJECT_NAME}_Presenters STATIC ${SOURCES} ${HEADERS}) \ No newline at end of file diff --git a/gui/plugins/pcmEvaluation/Views/CMakeLists.txt b/gui/plugins/pcmEvaluation/Views/CMakeLists.txt index f5f2a0af435577088ca0ed1720d4de5031916ae2..cd535d59d807bc5a9b6c470ea67b390b267d4e39 100644 --- a/gui/plugins/pcmEvaluation/Views/CMakeLists.txt +++ b/gui/plugins/pcmEvaluation/Views/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2021 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -9,20 +10,19 @@ # **********************************************************************/ set(SOURCES - ViewPcm_Eval.cpp - TrajectoryGraphicsItem.cpp - TrafficScene.cpp - ) + ViewPcm_Eval.cpp + TrajectoryGraphicsItem.cpp + TrafficScene.cpp +) set(HEADERS - ViewPcm_Eval.h - TrajectoryGraphicsItem.h - TrafficScene.h - ) + ViewPcm_Eval.h + TrajectoryGraphicsItem.h + TrafficScene.h +) set(UI - ViewPcm_Eval.ui - ) + ViewPcm_Eval.ui +) -add_library(${PROJECT_NAME}_Views STATIC ${SOURCES} ${HEADERS} ${UI}) -target_link_libraries(${PROJECT_NAME}_Models PRIVATE Qt5::Widgets) +add_library(${PROJECT_NAME}_Views STATIC ${SOURCES} ${HEADERS} ${UI}) \ No newline at end of file diff --git a/gui/plugins/pcmSimulation/CMakeLists.txt b/gui/plugins/pcmSimulation/CMakeLists.txt index 04c5b6a67b2559530e7085f2ea6e40b45063709f..9cb018d4a8e73638e6ac5a81e68d482918baf661 100644 --- a/gui/plugins/pcmSimulation/CMakeLists.txt +++ b/gui/plugins/pcmSimulation/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2021 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -38,34 +39,23 @@ include_directories(${Qt5Xml_INCLUDE_DIRS}) include_directories(${Qt5Sql_INCLUDE_DIRS}) # include interfaces, models and views -add_subdirectory(Interfaces) add_subdirectory(Models) add_subdirectory(Presenters) add_subdirectory(Views) -# include headers and sources of this plugin -set(SOURCES PluginPcm.cpp) -set(HEADERS PluginPcm.h) +add_openpass_target( + NAME Pcm_sim TYPE library LINKAGE shared COMPONENT gui -# declare target library -add_library(Pcm_sim SHARED ${SOURCES} ${HEADERS} ) + HEADERS + Interfaces/openPASS-PCM/PCMInterface.h + PluginPcm.h -# link with Qt libraries, models, views and Interfaces -target_link_libraries(Pcm_sim PRIVATE - Qt5::Widgets - Qt5::Core - Qt5::Xml - Qt5::Sql - Window - ${PROJECT_NAME}_Models - ${PROJECT_NAME}_Views - ${PROJECT_NAME}_Interfaces - ${PROJECT_NAME}_Presenters) + SOURCES + PluginPcm.cpp -if(WIN32) - install(TARGETS Pcm_sim - RUNTIME DESTINATION ${SUBDIR_LIB_GUI}) -elseif(UNIX) - install(TARGETS Pcm_sim - LIBRARY DESTINATION ${SUBDIR_LIB_GUI}) -endif() \ No newline at end of file + LIBRARIES + Window + ${PROJECT_NAME}_Models + ${PROJECT_NAME}_Views + ${PROJECT_NAME}_Presenters +) \ No newline at end of file diff --git a/gui/plugins/pcmSimulation/Interfaces/CMakeLists.txt b/gui/plugins/pcmSimulation/Interfaces/CMakeLists.txt deleted file mode 100644 index 62d32023073e1a98732437da50213314dc34fab6..0000000000000000000000000000000000000000 --- a/gui/plugins/pcmSimulation/Interfaces/CMakeLists.txt +++ /dev/null @@ -1,15 +0,0 @@ -# /********************************************************************* -# * Copyright (c) 2021 ITK Engineering GmbH -# * -# * This program and the accompanying materials are made -# * available under the terms of the Eclipse Public License 2.0 -# * which is available at https://www.eclipse.org/legal/epl-2.0/ -# * -# * SPDX-License-Identifier: EPL-2.0 -# **********************************************************************/ - -# define headers variable -set(HEADERS "") - -# bundle all libraries to one interface library -add_library(${PROJECT_NAME}_Interfaces STATIC ${HEADERS}) diff --git a/gui/plugins/pcmSimulation/Models/CMakeLists.txt b/gui/plugins/pcmSimulation/Models/CMakeLists.txt index 6147fbce48023ae1c70ccff4f28a2a7eb7ac3428..af2613e6e9e0a71d9569dc90d5bc4bffabb73e86 100644 --- a/gui/plugins/pcmSimulation/Models/CMakeLists.txt +++ b/gui/plugins/pcmSimulation/Models/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2021 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -8,47 +9,17 @@ # * SPDX-License-Identifier: EPL-2.0 # **********************************************************************/ +add_subdirectory(ConfigurationGeneratorPcm) + set(SOURCES - ModelPcm.cpp - FileHelper.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Importer/sceneryImporterPCM.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_agent.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_course.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_data.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_globalData.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_initialValues.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_line.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_lineContainer.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_marks.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_object.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_participantData.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_point.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_pointContainer.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_simulationSet.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_trajectory.cpp - ) + ModelPcm.cpp + FileHelper.cpp +) set(HEADERS - ModelPcm.h - FileHelper.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Importer/sceneryImporterPCM.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_agent.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_course.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_data.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_globalData.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_initialValues.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_line.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_lineContainer.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_marks.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_object.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_participantData.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_point.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_pointContainer.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_simulationSet.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/pcm/PCM_Data/pcm_trajectory.h - ) + ModelPcm.h + FileHelper.h +) add_library(${PROJECT_NAME}_Models STATIC ${SOURCES} ${HEADERS}) -target_link_libraries(${PROJECT_NAME}_Models PRIVATE Qt5::Xml Qt5::Widgets Qt5::Sql) - -add_subdirectory(ConfigurationGeneratorPcm) +target_link_libraries(${PROJECT_NAME}_Models PRIVATE ConfigurationGeneratorPcm DataStructuresXosc DataStructuresXml) diff --git a/gui/plugins/pcmSimulation/Models/ConfigurationGeneratorPcm/CMakeLists.txt b/gui/plugins/pcmSimulation/Models/ConfigurationGeneratorPcm/CMakeLists.txt index d8827c234817ec7a6d26ce317851590632927585..595e24db9b9a5d97e4583b16dcb104d062648603 100644 --- a/gui/plugins/pcmSimulation/Models/ConfigurationGeneratorPcm/CMakeLists.txt +++ b/gui/plugins/pcmSimulation/Models/ConfigurationGeneratorPcm/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2021 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -8,31 +9,28 @@ # * SPDX-License-Identifier: EPL-2.0 # **********************************************************************/ +add_subdirectory(DataStructuresXml) +add_subdirectory(DataStructuresXosc) + set(SOURCES - XmlMergeHelper.cpp - stochasticsPCM.cpp - openScenarioWriter.cpp - DatabaseReaderPcm.cpp - ConfigWriter.cpp - ConfigSetReaderPcm.cpp - ConfigGeneratorPcm.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../../common/pcm/PCM_Importer/scenarioImporterPCM.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../../common/pcm/PCM_Importer/vehicleModelImporter.cpp - ) + XmlMergeHelper.cpp + stochasticsPCM.cpp + openScenarioWriter.cpp + DatabaseReaderPcm.cpp + ConfigWriter.cpp + ConfigSetReaderPcm.cpp + ConfigGeneratorPcm.cpp +) set(HEADERS - XmlMergeHelper.h - stochasticsPCM.h - openScenarioWriter.h - DatabaseReaderPcm.h - ConfigWriter.h - ConfigSetReaderPcm.h - ConfigGeneratorPcm.h - ${CMAKE_CURRENT_LIST_DIR}/../../../../common/pcm/PCM_Importer/scenarioImporterPCM.h - ${CMAKE_CURRENT_LIST_DIR}/../../../../common/pcm/PCM_Importer/vehicleModelImporter.h - ) + XmlMergeHelper.h + stochasticsPCM.h + openScenarioWriter.h + DatabaseReaderPcm.h + ConfigWriter.h + ConfigSetReaderPcm.h + ConfigGeneratorPcm.h +) -target_sources(${PROJECT_NAME}_Models PRIVATE ${SOURCES} ${HEADERS}) - -add_subdirectory(DataStructuresXml) -add_subdirectory(DataStructuresXosc) +add_library(ConfigurationGeneratorPcm STATIC ${SOURCES} ${HEADERS}) +target_link_libraries(ConfigurationGeneratorPcm Gui_Common) diff --git a/gui/plugins/pcmSimulation/Models/ConfigurationGeneratorPcm/DataStructuresXml/CMakeLists.txt b/gui/plugins/pcmSimulation/Models/ConfigurationGeneratorPcm/DataStructuresXml/CMakeLists.txt index 0ca23e8751ea10fb652d7c7c241e8bc82b31a0ed..7249602a603b2ee4559bda9807ab080b90108358 100644 --- a/gui/plugins/pcmSimulation/Models/ConfigurationGeneratorPcm/DataStructuresXml/CMakeLists.txt +++ b/gui/plugins/pcmSimulation/Models/ConfigurationGeneratorPcm/DataStructuresXml/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2021 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -9,47 +10,47 @@ # **********************************************************************/ set(SOURCES - XmlAgent.cpp - XmlAgentEquipment.cpp - XmlComponent.cpp - XmlComponentObservation.cpp - XmlComponentSignal.cpp - XmlGlobalData.cpp - XmlLine.cpp - XmlMarks.cpp - XmlModelsConfig.cpp - XmlObject.cpp - XmlObservation.cpp - XmlParameter.cpp - XmlPoint.cpp - XmlProfilesConfig.cpp - XmlScenery.cpp - XmlSlaveConfig.cpp - XmlSpawnPoint.cpp - XmlTrajectory.cpp - XmlViewObject.cpp - ) + XmlAgent.cpp + XmlAgentEquipment.cpp + XmlComponent.cpp + XmlComponentObservation.cpp + XmlComponentSignal.cpp + XmlGlobalData.cpp + XmlLine.cpp + XmlMarks.cpp + XmlModelsConfig.cpp + XmlObject.cpp + XmlObservation.cpp + XmlParameter.cpp + XmlPoint.cpp + XmlProfilesConfig.cpp + XmlScenery.cpp + XmlSlaveConfig.cpp + XmlSpawnPoint.cpp + XmlTrajectory.cpp + XmlViewObject.cpp +) set(HEADERS - XmlAgent.h - XmlAgentEquipment.h - XmlComponent.h - XmlComponentObservation.h - XmlComponentSignal.h - XmlGlobalData.h - XmlLine.h - XmlMarks.h - XmlModelsConfig.h - XmlObject.h - XmlObservation.h - XmlParameter.h - XmlPoint.h - XmlProfilesConfig.h - XmlScenery.h - XmlSlaveConfig.h - XmlSpawnPoint.h - XmlTrajectory.h - XmlViewObject.h - ) + XmlAgent.h + XmlAgentEquipment.h + XmlComponent.h + XmlComponentObservation.h + XmlComponentSignal.h + XmlGlobalData.h + XmlLine.h + XmlMarks.h + XmlModelsConfig.h + XmlObject.h + XmlObservation.h + XmlParameter.h + XmlPoint.h + XmlProfilesConfig.h + XmlScenery.h + XmlSlaveConfig.h + XmlSpawnPoint.h + XmlTrajectory.h + XmlViewObject.h +) -target_sources(${PROJECT_NAME}_Models PRIVATE ${SOURCES} ${HEADERS}) +add_library(DataStructuresXml STATIC ${SOURCES} ${HEADERS}) diff --git a/gui/plugins/pcmSimulation/Models/ConfigurationGeneratorPcm/DataStructuresXosc/CMakeLists.txt b/gui/plugins/pcmSimulation/Models/ConfigurationGeneratorPcm/DataStructuresXosc/CMakeLists.txt index 1f59b5530e550783e2c5ae6279ab1a7783f0beac..3e49f453461837ea5400acb9e788455d25271303 100644 --- a/gui/plugins/pcmSimulation/Models/ConfigurationGeneratorPcm/DataStructuresXosc/CMakeLists.txt +++ b/gui/plugins/pcmSimulation/Models/ConfigurationGeneratorPcm/DataStructuresXosc/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2021 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -18,4 +19,4 @@ set(HEADERS XoscTrajectory.h ) -target_sources(${PROJECT_NAME}_Models PRIVATE ${SOURCES} ${HEADERS}) +add_library(DataStructuresXosc STATIC ${SOURCES} ${HEADERS}) diff --git a/gui/plugins/pcmSimulation/Presenters/CMakeLists.txt b/gui/plugins/pcmSimulation/Presenters/CMakeLists.txt index 3b4c20e45428b77e81eb7339491c9979afe7956b..307144524d60ee6c8fee50959cdceb2bd12788fa 100644 --- a/gui/plugins/pcmSimulation/Presenters/CMakeLists.txt +++ b/gui/plugins/pcmSimulation/Presenters/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2021 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -10,11 +11,10 @@ set(HEADERS ${CMAKE_CURRENT_LIST_DIR}/PresenterPcm.h - ) +) set(SOURCES ${CMAKE_CURRENT_LIST_DIR}/PresenterPcm.cpp - ) - +) add_library(${PROJECT_NAME}_Presenters STATIC ${SOURCES} ${HEADERS}) diff --git a/gui/plugins/pcmSimulation/Views/CMakeLists.txt b/gui/plugins/pcmSimulation/Views/CMakeLists.txt index fd30aafc938b5952d2c9ef483f06ffcb86af1bef..f75d22762d73694ff0143297288b898789050729 100644 --- a/gui/plugins/pcmSimulation/Views/CMakeLists.txt +++ b/gui/plugins/pcmSimulation/Views/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2021 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -9,16 +10,16 @@ # **********************************************************************/ set(SOURCES - ViewPcm.cpp - ) + ViewPcm.cpp +) set(HEADERS - ViewPcm.h - ) + ViewPcm.h +) set(UI - ViewPcm.ui - ) + ViewPcm.ui +) add_library(${PROJECT_NAME}_Views STATIC ${SOURCES} ${HEADERS} ${UI}) target_link_libraries(${PROJECT_NAME}_Models PRIVATE Qt5::Widgets) diff --git a/gui/plugins/project/CMakeLists.txt b/gui/plugins/project/CMakeLists.txt index 0974f1b35e2ce3ca4771c18e315c482658019c57..c7dcf56423955155da62fb5ccd762686c0a46e6d 100644 --- a/gui/plugins/project/CMakeLists.txt +++ b/gui/plugins/project/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -29,33 +30,25 @@ include_directories(../window/Interfaces) include_directories(../../application/Interfaces) include_directories(${Qt5Widgets_INCLUDE_DIRS}) - # include interfaces, models and views -add_subdirectory(Interfaces) add_subdirectory(Models) add_subdirectory(Presenters) add_subdirectory(Views) -# include headers and sources of this plugin -set(SOURCES ProjectPlugin.cpp) -set(HEADERS ProjectPlugin.h) - -# declare target library -add_library(Project SHARED ${SOURCES} ${HEADERS}) - -# link with Qt libraries, models, views and Interfaces -target_link_libraries(Project PRIVATE - Qt5::Widgets - Window - ${PROJECT_NAME}_Models - ${PROJECT_NAME}_Views - ${PROJECT_NAME}_Presenters - ${PROJECT_NAME}_Interfaces) - -if(WIN32) - install(TARGETS Project - RUNTIME DESTINATION ${SUBDIR_LIB_GUI}) -elseif(UNIX) - install(TARGETS Project - LIBRARY DESTINATION ${SUBDIR_LIB_GUI}) -endif() \ No newline at end of file +add_openpass_target( + NAME Project TYPE library LINKAGE shared COMPONENT gui + + HEADERS + Interfaces/openPASS-Project/ProjectInterface.h + ProjectPlugin.h + + SOURCES + ProjectPlugin.cpp + + LIBRARIES + Qt5::Widgets + Window + ${PROJECT_NAME}_Models + ${PROJECT_NAME}_Views + ${PROJECT_NAME}_Presenters +) \ No newline at end of file diff --git a/gui/plugins/project/Interfaces/CMakeLists.txt b/gui/plugins/project/Interfaces/CMakeLists.txt deleted file mode 100644 index 4a46d3b0a681e83f030d342feea5a66489e3efcd..0000000000000000000000000000000000000000 --- a/gui/plugins/project/Interfaces/CMakeLists.txt +++ /dev/null @@ -1,18 +0,0 @@ -# /********************************************************************* -# * Copyright (c) 2019 Volkswagen Group of America. -# * -# * This program and the accompanying materials are made -# * available under the terms of the Eclipse Public License 2.0 -# * which is available at https://www.eclipse.org/legal/epl-2.0/ -# * -# * SPDX-License-Identifier: EPL-2.0 -# **********************************************************************/ - -# define headers variable -set(HEADERS "") - -# build all Interface libraries -include(openPASS-Project/CMakeLists.txt) - -# bundle all libraries to one interface library -add_library(${PROJECT_NAME}_Interfaces STATIC ${HEADERS}) diff --git a/gui/plugins/project/Interfaces/openPASS-Project/CMakeLists.txt b/gui/plugins/project/Interfaces/openPASS-Project/CMakeLists.txt deleted file mode 100644 index bd683c387571351a6964c6d4f039b5506d9e9e0b..0000000000000000000000000000000000000000 --- a/gui/plugins/project/Interfaces/openPASS-Project/CMakeLists.txt +++ /dev/null @@ -1,13 +0,0 @@ -# /********************************************************************* -# * Copyright (c) 2019 Volkswagen Group of America. -# * -# * This program and the accompanying materials are made -# * available under the terms of the Eclipse Public License 2.0 -# * which is available at https://www.eclipse.org/legal/epl-2.0/ -# * -# * SPDX-License-Identifier: EPL-2.0 -# **********************************************************************/ - -set(HEADERS - ${HEADERS} - ${CMAKE_CURRENT_LIST_DIR}/ProjectInterface.h) diff --git a/gui/plugins/project/Models/CMakeLists.txt b/gui/plugins/project/Models/CMakeLists.txt index 26811d729aabd6a4f886d8efad09372d3a4dd922..b233bd127485cf066b4dd1197eb14b5c478b7271 100644 --- a/gui/plugins/project/Models/CMakeLists.txt +++ b/gui/plugins/project/Models/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -13,14 +14,13 @@ set(SOURCES ${CMAKE_CURRENT_LIST_DIR}/ProjectXMLBaseModel.cpp ${CMAKE_CURRENT_LIST_DIR}/ProjectXMLSaveModel.cpp ${CMAKE_CURRENT_LIST_DIR}/ProjectXMLLoadModel.cpp - - ) +) set(HEADERS ${CMAKE_CURRENT_LIST_DIR}/ProjectModel.h ${CMAKE_CURRENT_LIST_DIR}/ProjectXMLBaseModel.h ${CMAKE_CURRENT_LIST_DIR}/ProjectXMLSaveModel.h ${CMAKE_CURRENT_LIST_DIR}/ProjectXMLLoadModel.h - ) +) add_library(${PROJECT_NAME}_Models STATIC ${SOURCES} ${HEADERS}) diff --git a/gui/plugins/project/Presenters/CMakeLists.txt b/gui/plugins/project/Presenters/CMakeLists.txt index 01717dc44d1312cbeb2c924bf114d9d5694914b4..5755bcb64df8be3d0ab5c7ef23b23f12e2cf98a3 100644 --- a/gui/plugins/project/Presenters/CMakeLists.txt +++ b/gui/plugins/project/Presenters/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -10,11 +11,10 @@ set(HEADERS ${CMAKE_CURRENT_LIST_DIR}/ProjectPresenter.h - ) +) set(SOURCES ${CMAKE_CURRENT_LIST_DIR}/ProjectPresenter.cpp - ) - +) add_library(${PROJECT_NAME}_Presenters STATIC ${SOURCES} ${HEADERS}) diff --git a/gui/plugins/project/Views/CMakeLists.txt b/gui/plugins/project/Views/CMakeLists.txt index d3ae6927fe75915760e6afb130252779add9ed61..bc2e92f9bed990d73db059cdc7cb3a43d976a498 100644 --- a/gui/plugins/project/Views/CMakeLists.txt +++ b/gui/plugins/project/Views/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -10,15 +11,15 @@ set(SOURCES ${CMAKE_CURRENT_LIST_DIR}/ProjectView.cpp - ) +) set(HEADERS ${CMAKE_CURRENT_LIST_DIR}/ProjectView.h - ) +) set(UI ${CMAKE_CURRENT_LIST_DIR}/ProjectView.ui - ) +) add_library(${PROJECT_NAME}_Views STATIC ${SOURCES} ${HEADERS} ${UI}) target_link_libraries(${PROJECT_NAME}_Models PRIVATE Qt5::Widgets) diff --git a/gui/plugins/statistics/CMakeLists.txt b/gui/plugins/statistics/CMakeLists.txt index 065a0c18cf25a9004cce7c72fc7b02dde9b834c8..315f7a343e7f8e76847d7916a849d43761a85768 100644 --- a/gui/plugins/statistics/CMakeLists.txt +++ b/gui/plugins/statistics/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2020 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -31,31 +32,24 @@ include_directories(../../common) include_directories(${Qt5Widgets_INCLUDE_DIRS}) # include interfaces, models and views -add_subdirectory(Interfaces) add_subdirectory(Models) add_subdirectory(Presenters) add_subdirectory(Views) -# include headers and sources of this plugin -set(SOURCES PluginStatistics.cpp) -set(HEADERS PluginStatistics.h) - -# declare target library -add_library(Statistics SHARED ${SOURCES} ${HEADERS} ) - -# link with Qt libraries, models, views and Interfaces -target_link_libraries(Statistics PRIVATE - Qt5::Widgets - Window - ${PROJECT_NAME}_Models - ${PROJECT_NAME}_Views - ${PROJECT_NAME}_Interfaces - ${PROJECT_NAME}_Presenters) - -if(WIN32) - install(TARGETS Statistics - RUNTIME DESTINATION ${SUBDIR_LIB_GUI}) -elseif(UNIX) - install(TARGETS Statistics - LIBRARY DESTINATION ${SUBDIR_LIB_GUI}) -endif() +add_openpass_target( + NAME Statistics TYPE library LINKAGE shared COMPONENT gui + + HEADERS + PluginStatistics.h + + SOURCES + PluginStatistics.cpp + + LIBRARIES + Qt5::Widgets + Window + ${PROJECT_NAME}_Models + ${PROJECT_NAME}_Views + #${PROJECT_NAME}_Interfaces + ${PROJECT_NAME}_Presenters +) diff --git a/gui/plugins/statistics/Interfaces/CMakeLists.txt b/gui/plugins/statistics/Interfaces/CMakeLists.txt deleted file mode 100644 index 10e7969cbaca0f356f3618bda9ae0fde12097582..0000000000000000000000000000000000000000 --- a/gui/plugins/statistics/Interfaces/CMakeLists.txt +++ /dev/null @@ -1,15 +0,0 @@ -# /********************************************************************* -# * Copyright (c) 2020 ITK Engineering GmbH -# * -# * This program and the accompanying materials are made -# * available under the terms of the Eclipse Public License 2.0 -# * which is available at https://www.eclipse.org/legal/epl-2.0/ -# * -# * SPDX-License-Identifier: EPL-2.0 -# **********************************************************************/ - -# define headers variable -set(HEADERS "") - -# bundle all libraries to one interface library -add_library(${PROJECT_NAME}_Interfaces STATIC ${HEADERS}) diff --git a/gui/plugins/statistics/Models/CMakeLists.txt b/gui/plugins/statistics/Models/CMakeLists.txt index 90814334560ab7a41bf5a5ec689079b8d52549e0..0c1ed00cfc07e440e73b679bf2faf328efd50d7d 100644 --- a/gui/plugins/statistics/Models/CMakeLists.txt +++ b/gui/plugins/statistics/Models/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2020 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -12,16 +13,11 @@ include_directories(../../../common) set(SOURCES ModelStatistics.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/Histogram.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/RowHistograms.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/TableModel.cpp ) set(HEADERS ModelStatistics.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/Histogram.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/RowHistograms.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/TableModel.h ) add_library(${PROJECT_NAME}_Models STATIC ${SOURCES} ${HEADERS}) +target_link_libraries(${PROJECT_NAME}_Models PRIVATE Gui_Common) diff --git a/gui/plugins/statistics/Presenters/CMakeLists.txt b/gui/plugins/statistics/Presenters/CMakeLists.txt index 86a5af483db437a3b98296afa0c362149970c100..7892c1cdc96fb00902af02b99c2cbeab974e7cd0 100644 --- a/gui/plugins/statistics/Presenters/CMakeLists.txt +++ b/gui/plugins/statistics/Presenters/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2020 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -12,11 +13,10 @@ include_directories(../../../common) set(HEADERS ${CMAKE_CURRENT_LIST_DIR}/PresenterStatistics.h - ) +) set(SOURCES ${CMAKE_CURRENT_LIST_DIR}/PresenterStatistics.cpp - ) - +) add_library(${PROJECT_NAME}_Presenters STATIC ${SOURCES} ${HEADERS}) diff --git a/gui/plugins/statistics/Views/CMakeLists.txt b/gui/plugins/statistics/Views/CMakeLists.txt index fecb2e19f41ddd9fbb11a7c4e1791b1e4d1f69ed..671b26ed66c2cde1e0809a369b31e3bf41b71a8f 100644 --- a/gui/plugins/statistics/Views/CMakeLists.txt +++ b/gui/plugins/statistics/Views/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2020 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -11,32 +12,20 @@ include_directories(../../../common) set(SOURCES - TrafficScene.cpp - TrajectoryGraphicsItem.cpp - ViewStatistics.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/Plot.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/RowHistograms.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/CenteredTextItem.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/PlotGraphicsItem.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/Graph.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/PlotAxes.cpp - ) + TrafficScene.cpp + TrajectoryGraphicsItem.cpp + ViewStatistics.cpp +) set(HEADERS - TrafficScene.h - TrajectoryGraphicsItem.h - ViewStatistics.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/Plot.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/RowHistograms.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/CenteredTextItem.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/PlotGraphicsItem.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/Graph.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/PlotAxes.h - ) + TrafficScene.h + TrajectoryGraphicsItem.h + ViewStatistics.h +) set(UI - ViewStatistics.ui - ) + ViewStatistics.ui +) add_library(${PROJECT_NAME}_Views STATIC ${SOURCES} ${HEADERS} ${UI}) -target_link_libraries(${PROJECT_NAME}_Models PRIVATE Qt5::Widgets) +target_link_libraries(${PROJECT_NAME}_Models PRIVATE Qt5::Widgets Gui_Common) diff --git a/gui/plugins/system/CMakeLists.txt b/gui/plugins/system/CMakeLists.txt index e791b901f97b82132d2387ac367ad2e2a00fbba4..cb5c8b61c206067e96e528baf8d1a7f9892f29d3 100644 --- a/gui/plugins/system/CMakeLists.txt +++ b/gui/plugins/system/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -32,32 +33,40 @@ include_directories(../../application/Interfaces) include_directories(${Qt5Widgets_INCLUDE_DIRS}) # include interfaces, models and views -add_subdirectory(Interfaces) add_subdirectory(Models) add_subdirectory(Views) -# include headers and sources of this plugin -set(SOURCES SystemPlugin.cpp) -set(HEADERS SystemPlugin.h) qt5_add_resources(openPASS-System.qrc) -# declare target library -add_library(System SHARED ${SOURCES} ${HEADERS} ) - -# link with Qt libraries, models, views and Interfaces -target_link_libraries(System PRIVATE - Qt5::Widgets - Window - Component - Project - ${PROJECT_NAME}_Models - ${PROJECT_NAME}_Views - ${PROJECT_NAME}_Interfaces) - -if(WIN32) - install(TARGETS System - RUNTIME DESTINATION ${SUBDIR_LIB_GUI}) -elseif(UNIX) - install(TARGETS System - LIBRARY DESTINATION ${SUBDIR_LIB_GUI}) -endif() \ No newline at end of file +add_openpass_target( + NAME System TYPE library LINKAGE shared COMPONENT gui + + HEADERS + Interfaces/openPASS-System/SystemComponentInputItemInterface.h + Interfaces/openPASS-System/SystemComponentInputMapInterface.h + Interfaces/openPASS-System/SystemComponentItemInterface.h + Interfaces/openPASS-System/SystemComponentManagerInterface.h + Interfaces/openPASS-System/SystemComponentMapInterface.h + Interfaces/openPASS-System/SystemComponentOutputItemInterface.h + Interfaces/openPASS-System/SystemComponentOutputMapInterface.h + Interfaces/openPASS-System/SystemComponentParameterItemInterface.h + Interfaces/openPASS-System/SystemComponentParameterMapInterface.h + Interfaces/openPASS-System/SystemComponentScheduleInterface.h + Interfaces/openPASS-System/SystemConnectionMapInterface.h + Interfaces/openPASS-System/SystemConnectionItemInterface.h + Interfaces/openPASS-System/SystemInterface.h + Interfaces/openPASS-System/SystemItemInterface.h + Interfaces/openPASS-System/SystemMapInterface.h + SystemPlugin.h + + SOURCES + SystemPlugin.cpp + + LIBRARIES + Qt5::Widgets + Window + Component + Project + ${PROJECT_NAME}_Models + ${PROJECT_NAME}_Views +) \ No newline at end of file diff --git a/gui/plugins/system/Interfaces/CMakeLists.txt b/gui/plugins/system/Interfaces/CMakeLists.txt deleted file mode 100644 index 365f98f8a18005edea0dfb1cbb039daf1b073435..0000000000000000000000000000000000000000 --- a/gui/plugins/system/Interfaces/CMakeLists.txt +++ /dev/null @@ -1,18 +0,0 @@ -# /********************************************************************* -# * Copyright (c) 2019 Volkswagen Group of America. -# * -# * This program and the accompanying materials are made -# * available under the terms of the Eclipse Public License 2.0 -# * which is available at https://www.eclipse.org/legal/epl-2.0/ -# * -# * SPDX-License-Identifier: EPL-2.0 -# **********************************************************************/ - -# define headers variable -set(HEADERS "") - -# build all Interface libraries -include(openPASS-System/CMakeLists.txt) - -# bundle all libraries to one interface library -add_library(${PROJECT_NAME}_Interfaces STATIC ${HEADERS}) diff --git a/gui/plugins/system/Interfaces/openPASS-System/CMakeLists.txt b/gui/plugins/system/Interfaces/openPASS-System/CMakeLists.txt deleted file mode 100644 index 23385a02f0301e81fd94517d6b9f446b970f58fe..0000000000000000000000000000000000000000 --- a/gui/plugins/system/Interfaces/openPASS-System/CMakeLists.txt +++ /dev/null @@ -1,27 +0,0 @@ -# /********************************************************************* -# * Copyright (c) 2019 Volkswagen Group of America. -# * -# * This program and the accompanying materials are made -# * available under the terms of the Eclipse Public License 2.0 -# * which is available at https://www.eclipse.org/legal/epl-2.0/ -# * -# * SPDX-License-Identifier: EPL-2.0 -# ********************************************************************** - -set(HEADERS - ${HEADERS} - ${CMAKE_CURRENT_LIST_DIR}/SystemComponentInputItemInterface.h - ${CMAKE_CURRENT_LIST_DIR}/SystemComponentInputMapInterface.h - ${CMAKE_CURRENT_LIST_DIR}/SystemComponentItemInterface.h - ${CMAKE_CURRENT_LIST_DIR}/SystemComponentManagerInterface.h - ${CMAKE_CURRENT_LIST_DIR}/SystemComponentMapInterface.h - ${CMAKE_CURRENT_LIST_DIR}/SystemComponentOutputItemInterface.h - ${CMAKE_CURRENT_LIST_DIR}/SystemComponentOutputMapInterface.h - ${CMAKE_CURRENT_LIST_DIR}/SystemComponentParameterItemInterface.h - ${CMAKE_CURRENT_LIST_DIR}/SystemComponentParameterMapInterface.h - ${CMAKE_CURRENT_LIST_DIR}/SystemComponentScheduleInterface.h - ${CMAKE_CURRENT_LIST_DIR}/SystemConnectionMapInterface.h - ${CMAKE_CURRENT_LIST_DIR}/SystemConnectionItemInterface.h - ${CMAKE_CURRENT_LIST_DIR}/SystemInterface.h - ${CMAKE_CURRENT_LIST_DIR}/SystemItemInterface.h - ${CMAKE_CURRENT_LIST_DIR}/SystemMapInterface.h) diff --git a/gui/plugins/system/Models/CMakeLists.txt b/gui/plugins/system/Models/CMakeLists.txt index b130a505996c231eed596c46badd09abb29887c1..f5f45502ac5dd640ab5f37ff5dee9588f830db88 100644 --- a/gui/plugins/system/Models/CMakeLists.txt +++ b/gui/plugins/system/Models/CMakeLists.txt @@ -1,6 +1,7 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. # * Copyright (c) 2021 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -10,25 +11,25 @@ # **********************************************************************/ set(SOURCES - SystemComponentInputItemModel.cpp - SystemComponentInputMapModel.cpp - SystemComponentItemModel.cpp - SystemComponentManagerModel.cpp - SystemComponentMapModel.cpp - SystemComponentOutputItemModel.cpp - SystemComponentOutputMapModel.cpp - SystemComponentParameterItemModel.cpp - SystemComponentParameterMapModel.cpp - SystemComponentScheduleModel.cpp - SystemConnectionItemModel.cpp - SystemConnectionMapModel.cpp - SystemItemModel.cpp - SystemMapModel.cpp - SystemModel.cpp - SystemXMLBaseModel.cpp - SystemXMLLoadModel.cpp - SystemXMLSaveModel.cpp - ) + SystemComponentInputItemModel.cpp + SystemComponentInputMapModel.cpp + SystemComponentItemModel.cpp + SystemComponentManagerModel.cpp + SystemComponentMapModel.cpp + SystemComponentOutputItemModel.cpp + SystemComponentOutputMapModel.cpp + SystemComponentParameterItemModel.cpp + SystemComponentParameterMapModel.cpp + SystemComponentScheduleModel.cpp + SystemConnectionItemModel.cpp + SystemConnectionMapModel.cpp + SystemItemModel.cpp + SystemMapModel.cpp + SystemModel.cpp + SystemXMLBaseModel.cpp + SystemXMLLoadModel.cpp + SystemXMLSaveModel.cpp +) set(HEADERS SystemComponentInputItemModel.h @@ -49,6 +50,6 @@ set(HEADERS SystemXMLBaseModel.h SystemXMLLoadModel.h SystemXMLSaveModel.h - ) +) add_library(${PROJECT_NAME}_Models STATIC ${SOURCES} ${HEADERS}) diff --git a/gui/plugins/system/Views/CMakeLists.txt b/gui/plugins/system/Views/CMakeLists.txt index b627089f1ed2950ad8dcda528215623b19e954d4..ccf6c63baf924edbc6515430c698b435678d720f 100644 --- a/gui/plugins/system/Views/CMakeLists.txt +++ b/gui/plugins/system/Views/CMakeLists.txt @@ -1,6 +1,7 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. # * Copyright (c) 2021 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -10,62 +11,62 @@ # **********************************************************************/ set(SOURCES - DoubleSpinBoxView.cpp - SpinBoxView.cpp - SystemBaseView.cpp - SystemComponentInputItemView.cpp - SystemComponentItemView.cpp - SystemComponentManagerView.cpp - SystemComponentOutputItemView.cpp - SystemComponentParameterItemView.cpp - SystemComponentParameterValueBoolView.cpp - SystemComponentParameterValueDoubleView.cpp - SystemComponentParameterValueFloatView.cpp - SystemComponentParameterValueIntView.cpp - SystemComponentParameterValueNormalDistributionView.cpp - SystemComponentParameterValueStringView.cpp - SystemComponentScheduleView.cpp - SystemComponentTitleView.cpp - SystemItemView.cpp - SystemView.cpp - WidgetView.cpp - SystemTabView.cpp - ) + DoubleSpinBoxView.cpp + SpinBoxView.cpp + SystemBaseView.cpp + SystemComponentInputItemView.cpp + SystemComponentItemView.cpp + SystemComponentManagerView.cpp + SystemComponentOutputItemView.cpp + SystemComponentParameterItemView.cpp + SystemComponentParameterValueBoolView.cpp + SystemComponentParameterValueDoubleView.cpp + SystemComponentParameterValueFloatView.cpp + SystemComponentParameterValueIntView.cpp + SystemComponentParameterValueNormalDistributionView.cpp + SystemComponentParameterValueStringView.cpp + SystemComponentScheduleView.cpp + SystemComponentTitleView.cpp + SystemItemView.cpp + SystemView.cpp + WidgetView.cpp + SystemTabView.cpp +) set(HEADERS - DoubleSpinBoxView.h - SpinBoxView.h - SystemBaseView.h - SystemComponentInputItemView.h - SystemComponentItemView.h - SystemComponentManagerView.h - SystemComponentOutputItemView.h - SystemComponentParameterItemView.h - SystemComponentParameterValueBoolView.h - SystemComponentParameterValueDoubleView.h - SystemComponentParameterValueFloatView.h - SystemComponentParameterValueIntView.h - SystemComponentParameterValueNormalDistributionView.h - SystemComponentParameterValueStringView.h - SystemComponentScheduleView.h - SystemComponentTitleView.h - SystemItemView.h - SystemView.h - WidgetView.h - SystemTabView.h - ) + DoubleSpinBoxView.h + SpinBoxView.h + SystemBaseView.h + SystemComponentInputItemView.h + SystemComponentItemView.h + SystemComponentManagerView.h + SystemComponentOutputItemView.h + SystemComponentParameterItemView.h + SystemComponentParameterValueBoolView.h + SystemComponentParameterValueDoubleView.h + SystemComponentParameterValueFloatView.h + SystemComponentParameterValueIntView.h + SystemComponentParameterValueNormalDistributionView.h + SystemComponentParameterValueStringView.h + SystemComponentScheduleView.h + SystemComponentTitleView.h + SystemItemView.h + SystemView.h + WidgetView.h + SystemTabView.h +) set(UI - SystemComponentInputItemView.ui - SystemComponentItemView.ui - SystemComponentManagerView.ui - SystemComponentOutputItemView.ui - SystemComponentParameterItemView.ui - SystemComponentScheduleView.ui - SystemComponentTitleView.ui - SystemView.ui - SystemTabView.ui - ) + SystemComponentInputItemView.ui + SystemComponentItemView.ui + SystemComponentManagerView.ui + SystemComponentOutputItemView.ui + SystemComponentParameterItemView.ui + SystemComponentScheduleView.ui + SystemComponentTitleView.ui + SystemView.ui + SystemTabView.ui +) add_library(${PROJECT_NAME}_Views STATIC ${SOURCES} ${HEADERS} ${UI}) target_link_libraries(${PROJECT_NAME}_Models PRIVATE Qt5::Widgets) diff --git a/gui/plugins/timePlot/CMakeLists.txt b/gui/plugins/timePlot/CMakeLists.txt index cc16b88c7ecf7b14b96a695f86676d26a0d633cf..59404802187f66e56600a56683187da4efb14a79 100644 --- a/gui/plugins/timePlot/CMakeLists.txt +++ b/gui/plugins/timePlot/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2020 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -21,7 +22,7 @@ find_package(Qt5Widgets REQUIRED) # set include directories include_directories(.) -include_directories(Interfaces) +#include_directories(Interfaces) include_directories(Models) include_directories(Presenters) include_directories(Views) @@ -31,31 +32,23 @@ include_directories(../../common) include_directories(${Qt5Widgets_INCLUDE_DIRS}) # include interfaces, models and views -add_subdirectory(Interfaces) add_subdirectory(Models) add_subdirectory(Presenters) add_subdirectory(Views) -# include headers and sources of this plugin -set(SOURCES PluginTimePlot.cpp) -set(HEADERS PluginTimePlot.h) - -# declare target library -add_library(TimePlot SHARED ${SOURCES} ${HEADERS} ) - -# link with Qt libraries, models, views and Interfaces -target_link_libraries(TimePlot PRIVATE - Qt5::Widgets - Window - ${PROJECT_NAME}_Models - ${PROJECT_NAME}_Views - ${PROJECT_NAME}_Interfaces - ${PROJECT_NAME}_Presenters) - -if(WIN32) - install(TARGETS TimePlot - RUNTIME DESTINATION ${SUBDIR_LIB_GUI}) -elseif(UNIX) - install(TARGETS TimePlot - LIBRARY DESTINATION ${SUBDIR_LIB_GUI}) -endif() +add_openpass_target( + NAME TimePlot TYPE library LINKAGE shared COMPONENT gui + + HEADERS + PluginTimePlot.h + + SOURCES + PluginTimePlot.cpp + + LIBRARIES + Qt5::Widgets + Window + ${PROJECT_NAME}_Models + ${PROJECT_NAME}_Views + ${PROJECT_NAME}_Presenters +) \ No newline at end of file diff --git a/gui/plugins/timePlot/Interfaces/CMakeLists.txt b/gui/plugins/timePlot/Interfaces/CMakeLists.txt deleted file mode 100644 index 10e7969cbaca0f356f3618bda9ae0fde12097582..0000000000000000000000000000000000000000 --- a/gui/plugins/timePlot/Interfaces/CMakeLists.txt +++ /dev/null @@ -1,15 +0,0 @@ -# /********************************************************************* -# * Copyright (c) 2020 ITK Engineering GmbH -# * -# * This program and the accompanying materials are made -# * available under the terms of the Eclipse Public License 2.0 -# * which is available at https://www.eclipse.org/legal/epl-2.0/ -# * -# * SPDX-License-Identifier: EPL-2.0 -# **********************************************************************/ - -# define headers variable -set(HEADERS "") - -# bundle all libraries to one interface library -add_library(${PROJECT_NAME}_Interfaces STATIC ${HEADERS}) diff --git a/gui/plugins/timePlot/Models/CMakeLists.txt b/gui/plugins/timePlot/Models/CMakeLists.txt index 3f54775ecd14cbe46ba37bc49ffdcd95ab203280..78b6884be34afd520309efb83d289ec4c278fe01 100644 --- a/gui/plugins/timePlot/Models/CMakeLists.txt +++ b/gui/plugins/timePlot/Models/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2020 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -9,15 +10,16 @@ # **********************************************************************/ set(SOURCES - ModelTimePlot.cpp - ResultDirItemModel.cpp - TableModelPlot.cpp - ) + ModelTimePlot.cpp + ResultDirItemModel.cpp + TableModelPlot.cpp +) set(HEADERS - ModelTimePlot.h - ResultDirItemModel.h - TableModelPlot.h - ) + ModelTimePlot.h + ResultDirItemModel.h + TableModelPlot.h +) add_library(${PROJECT_NAME}_Models STATIC ${SOURCES} ${HEADERS}) +target_link_libraries(${PROJECT_NAME}_Models PRIVATE Qt5::Widgets) \ No newline at end of file diff --git a/gui/plugins/timePlot/Presenters/CMakeLists.txt b/gui/plugins/timePlot/Presenters/CMakeLists.txt index 737061c143d7b91f4734e9730546cf2e5df54284..6208fb8c1ee727f45d7baff4dffc5f7ac7ee47d8 100644 --- a/gui/plugins/timePlot/Presenters/CMakeLists.txt +++ b/gui/plugins/timePlot/Presenters/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2020 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -10,11 +11,10 @@ set(HEADERS ${CMAKE_CURRENT_LIST_DIR}/PresenterTimePlot.h - ) +) set(SOURCES ${CMAKE_CURRENT_LIST_DIR}/PresenterTimePlot.cpp - ) +) - -add_library(${PROJECT_NAME}_Presenters STATIC ${SOURCES} ${HEADERS}) +add_library(${PROJECT_NAME}_Presenters STATIC ${SOURCES} ${HEADERS}) \ No newline at end of file diff --git a/gui/plugins/timePlot/Views/CMakeLists.txt b/gui/plugins/timePlot/Views/CMakeLists.txt index 9b014118bfa0766987cf564306e9e02b5d1f6f04..bbb4d27033c4af2fc05398a760bb53016805135b 100644 --- a/gui/plugins/timePlot/Views/CMakeLists.txt +++ b/gui/plugins/timePlot/Views/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2020 ITK Engineering GmbH +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -9,28 +10,16 @@ # **********************************************************************/ set(SOURCES - ViewTimePlot.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/Plot.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/RowHistograms.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/CenteredTextItem.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/PlotGraphicsItem.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/Graph.cpp - ${CMAKE_CURRENT_LIST_DIR}/../../../common/PlotAxes.cpp - ) + ViewTimePlot.cpp +) set(HEADERS - ViewTimePlot.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/Plot.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/RowHistograms.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/CenteredTextItem.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/PlotGraphicsItem.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/Graph.h - ${CMAKE_CURRENT_LIST_DIR}/../../../common/PlotAxes.h - ) + ViewTimePlot.h +) set(UI - ViewTimePlot.ui - ) + ViewTimePlot.ui +) add_library(${PROJECT_NAME}_Views STATIC ${SOURCES} ${HEADERS} ${UI}) -target_link_libraries(${PROJECT_NAME}_Models PRIVATE Qt5::Widgets) +target_link_libraries(${PROJECT_NAME}_Models PRIVATE Gui_Common Qt5::Widgets) \ No newline at end of file diff --git a/gui/plugins/window/CMakeLists.txt b/gui/plugins/window/CMakeLists.txt index 930efa610e949631f960ec7480373e09d5231d44..8c2757202479d00b0364747346965f1e5c835113 100644 --- a/gui/plugins/window/CMakeLists.txt +++ b/gui/plugins/window/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -30,31 +31,32 @@ include_directories(../../application/Interfaces) include_directories(${Qt5Widgets_INCLUDE_DIRS}) # include interfaces, models and views -add_subdirectory(Interfaces) add_subdirectory(Models) add_subdirectory(Presenters) add_subdirectory(Views) -# include headers and sources of this plugin -set(SOURCES WindowPlugin.cpp) -set(HEADERS WindowPlugin.h) set(RESOURCES openPASS-Window.qrc) -# declare target library -add_library(Window SHARED ${SOURCES} ${HEADERS} ${RESOURCES}) - -# link with Qt libraries, models, views and Interfaces -target_link_libraries(Window PRIVATE - Qt5::Widgets - ${PROJECT_NAME}_Models - ${PROJECT_NAME}_Views - ${PROJECT_NAME}_Presenters - ${PROJECT_NAME}_Interfaces) - -if(WIN32) - install(TARGETS Window - RUNTIME DESTINATION ${SUBDIR_LIB_GUI}) -elseif(UNIX) - install(TARGETS Window - LIBRARY DESTINATION ${SUBDIR_LIB_GUI}) -endif() +add_openpass_target( + NAME Window TYPE library LINKAGE shared COMPONENT gui + + HEADERS + Interfaces/openPASS-Window/WindowInterface.h + ../../application/Interfaces/openPASS/PluginInterface.h + ../../application/Interfaces/openPASS/PluginManagerInterface.h + ../../application/Interfaces/openPASS/RandomInterface.h + ../../application/Interfaces/openPASS/ServiceInterface.h + ../../application/Interfaces/openPASS/ServiceManagerInterface.h + ../../application/Interfaces/openPASS/ioplugininterface.h + WindowPlugin.h + + SOURCES + WindowPlugin.cpp + ${RESOURCES} + + LIBRARIES + Qt5::Widgets + ${PROJECT_NAME}_Models + ${PROJECT_NAME}_Views + ${PROJECT_NAME}_Presenters +) \ No newline at end of file diff --git a/gui/plugins/window/Interfaces/CMakeLists.txt b/gui/plugins/window/Interfaces/CMakeLists.txt deleted file mode 100644 index 9a2b0fdfd22ea7bb8a68cc6e22f3a99303b75091..0000000000000000000000000000000000000000 --- a/gui/plugins/window/Interfaces/CMakeLists.txt +++ /dev/null @@ -1,19 +0,0 @@ -# /********************************************************************* -# * Copyright (c) 2019 Volkswagen Group of America. -# * -# * This program and the accompanying materials are made -# * available under the terms of the Eclipse Public License 2.0 -# * which is available at https://www.eclipse.org/legal/epl-2.0/ -# * -# * SPDX-License-Identifier: EPL-2.0 -# **********************************************************************/ - -# define headers variable -set(HEADERS "") - -# build all Interface libraries -include(openPASS-Window/CMakeLists.txt) -include(../../../application/Interfaces/openPASS/CMakeLists.txt) - -# bundle all libraries to one interface library -add_library(${PROJECT_NAME}_Interfaces STATIC ${HEADERS}) diff --git a/gui/plugins/window/Interfaces/openPASS-Window/CMakeLists.txt b/gui/plugins/window/Interfaces/openPASS-Window/CMakeLists.txt deleted file mode 100644 index 81648e4f2f1c7cfaec3c44939a5dae1159133cc8..0000000000000000000000000000000000000000 --- a/gui/plugins/window/Interfaces/openPASS-Window/CMakeLists.txt +++ /dev/null @@ -1,13 +0,0 @@ -# /********************************************************************* -# * Copyright (c) 2019 Volkswagen Group of America. -# * -# * This program and the accompanying materials are made -# * available under the terms of the Eclipse Public License 2.0 -# * which is available at https://www.eclipse.org/legal/epl-2.0/ -# * -# * SPDX-License-Identifier: EPL-2.0 -# **********************************************************************/ - -set(HEADERS - ${HEADERS} - ${CMAKE_CURRENT_LIST_DIR}/WindowInterface.h) diff --git a/gui/plugins/window/Models/CMakeLists.txt b/gui/plugins/window/Models/CMakeLists.txt index 1bae4af48cf4b2d6114bbfe557dc4056808ba36c..7af1b3cbbe44af34dfc8708e5c696cafac70d48f 100644 --- a/gui/plugins/window/Models/CMakeLists.txt +++ b/gui/plugins/window/Models/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -10,12 +11,11 @@ set(SOURCES ${CMAKE_CURRENT_LIST_DIR}/WindowModel.cpp - - ) +) set(HEADERS ${CMAKE_CURRENT_LIST_DIR}/WindowModel.h - ) +) add_library(${PROJECT_NAME}_Models STATIC ${SOURCES} ${HEADERS}) target_link_libraries(${PROJECT_NAME}_Models PRIVATE Qt5::Widgets) diff --git a/gui/plugins/window/Presenters/CMakeLists.txt b/gui/plugins/window/Presenters/CMakeLists.txt index a4bb5ea3c7456c4af71b20523b3d8e381804853a..51f4f25aae564bdb061e19f29942ec993dcf39d5 100644 --- a/gui/plugins/window/Presenters/CMakeLists.txt +++ b/gui/plugins/window/Presenters/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -10,11 +11,10 @@ set(HEADERS ${CMAKE_CURRENT_LIST_DIR}/WindowPresenter.h - ) +) set(SOURCES ${CMAKE_CURRENT_LIST_DIR}/WindowPresenter.cpp - ) - +) add_library(${PROJECT_NAME}_Presenters STATIC ${SOURCES} ${HEADERS}) diff --git a/gui/plugins/window/Views/CMakeLists.txt b/gui/plugins/window/Views/CMakeLists.txt index b9c4337d9dd72371d070adfcf45ac3f31df7b5fd..06ff95d98b4d27914e3099e544daff07fcd4b915 100644 --- a/gui/plugins/window/Views/CMakeLists.txt +++ b/gui/plugins/window/Views/CMakeLists.txt @@ -1,5 +1,6 @@ # /********************************************************************* # * Copyright (c) 2019 Volkswagen Group of America. +# * Copyright (c) 2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # * # * This program and the accompanying materials are made # * available under the terms of the Eclipse Public License 2.0 @@ -11,16 +12,16 @@ set(SOURCES ${CMAKE_CURRENT_LIST_DIR}/WindowView.cpp ${CMAKE_CURRENT_LIST_DIR}/LogoDelegate.cpp - ) +) set(HEADERS ${CMAKE_CURRENT_LIST_DIR}/WindowView.h ${CMAKE_CURRENT_LIST_DIR}/LogoDelegate.h - ) +) set(UI ${CMAKE_CURRENT_LIST_DIR}/WindowView.ui - ) +) add_library(${PROJECT_NAME}_Views STATIC ${SOURCES} ${HEADERS} ${UI}) target_link_libraries(${PROJECT_NAME}_Models PRIVATE Qt5::Widgets)