From 7b02a34cf3aa03406ff8b655436550b38c37b5c4 Mon Sep 17 00:00:00 2001 From: Michael Mandl Date: Mon, 12 Nov 2018 22:15:42 +0100 Subject: [PATCH] Integrated protobuf, added some empty messages --- proto/DataModel.proto | 12 ++++++++++++ proto/MetaDataModel.proto | 8 ++++++++ proto/V2SvkModel.proto | 8 ++++++++ source/CMakeLists.txt | 14 ++++++++++++++ source/SubTests/V2Svk/CMakeLists.txt | 11 +++++++++++ 5 files changed, 53 insertions(+) create mode 100644 proto/DataModel.proto create mode 100644 proto/MetaDataModel.proto create mode 100644 proto/V2SvkModel.proto diff --git a/proto/DataModel.proto b/proto/DataModel.proto new file mode 100644 index 0000000..bd21edb --- /dev/null +++ b/proto/DataModel.proto @@ -0,0 +1,12 @@ +syntax = "proto3"; + +package ESGRAF48; + +import "MetaDataModel.proto"; +import "V2SvkModel.proto"; + +message DataModel +{ + MetaDataModel MetaData = 1; + V2SvkModel V2Svk = 2; +} diff --git a/proto/MetaDataModel.proto b/proto/MetaDataModel.proto new file mode 100644 index 0000000..1b75c36 --- /dev/null +++ b/proto/MetaDataModel.proto @@ -0,0 +1,8 @@ +syntax = "proto3"; + +package ESGRAF48; + +message MetaDataModel +{ + string dummy = 1; +} diff --git a/proto/V2SvkModel.proto b/proto/V2SvkModel.proto new file mode 100644 index 0000000..9f63d8c --- /dev/null +++ b/proto/V2SvkModel.proto @@ -0,0 +1,8 @@ +syntax = "proto3"; + +package ESGRAF48; + +message V2SvkModel +{ + string dummy = 1; +} diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt index 2bb2e79..5bdd8f2 100644 --- a/source/CMakeLists.txt +++ b/source/CMakeLists.txt @@ -4,6 +4,7 @@ project(ESGRAF48 LANGUAGES CXX) find_package(Qt5Widgets REQUIRED) find_package(Qt5PrintSupport REQUIRED) +find_package(Protobuf REQUIRED) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) @@ -16,6 +17,15 @@ qt5_add_resources(LOGO_TEST_QRC mainwindow.qrc ) +set(DataModel_PROTO_FILES + ../proto/DataModel.proto + ../proto/MetaDataModel.proto + ../proto/V2SvkModel.proto +) + +protobuf_generate_cpp(PROTO_SRCS PROTO_HDRS + ${DataModel_PROTO_FILES}) + add_executable(${PROJECT_NAME} WIN32 LogoTest.cpp DataModel.cpp @@ -23,6 +33,8 @@ add_executable(${PROJECT_NAME} WIN32 Age.cpp ${LOGO_TEST_UI} ${LOGO_TEST_QRC} + ${PROTO_SRCS} + ${PROTO_HDRS} ) set_target_properties(${PROJECT_NAME} @@ -33,6 +45,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_LIST_DIR} ${CMAKE_CURRENT_BINARY_DIR} + ${Protobuf_INCLUDE_DIRS} ) target_link_libraries(${PROJECT_NAME} @@ -50,6 +63,7 @@ target_link_libraries(${PROJECT_NAME} ResultWidget Qt5::Widgets Qt5::PrintSupport + ${Protobuf_LIBRARIES} ) add_subdirectory(CheckableItem) diff --git a/source/SubTests/V2Svk/CMakeLists.txt b/source/SubTests/V2Svk/CMakeLists.txt index 495e5ca..fdd3fe6 100644 --- a/source/SubTests/V2Svk/CMakeLists.txt +++ b/source/SubTests/V2Svk/CMakeLists.txt @@ -3,6 +3,7 @@ cmake_minimum_required(VERSION 3.6) project(V2Svk LANGUAGES CXX) find_package(Qt5Widgets REQUIRED) +find_package(Protobuf REQUIRED) set(CMAKE_AUTOMOC ON) @@ -10,10 +11,18 @@ qt5_wrap_ui(UI_HEADERS V2SvkWidget.ui ) +set(V2Svk_PROTO_FILES + ../../../proto/V2SvkModel.proto +) + +protobuf_generate_cpp(PROTO_SRCS PROTO_HDRS ${V2Svk_PROTO_FILES}) + add_library(${PROJECT_NAME} V2SvkWidget.cpp V2SvkModel.cpp ${UI_HEADERS} + ${PROTO_SRCS} + ${PROTO_HDRS} ) set_target_properties(${PROJECT_NAME} @@ -25,6 +34,7 @@ target_include_directories(${PROJECT_NAME} ${CMAKE_CURRENT_SOURCE_DIR} PRIVATE ${CMAKE_CURRENT_BINARY_DIR} + ${Protobuf_INCLUDE_DIRS} ) target_link_libraries(${PROJECT_NAME} @@ -33,4 +43,5 @@ target_link_libraries(${PROJECT_NAME} CheckableTest CheckableTestModel Qt5::Widgets + ${Protobuf_LIBRARIES} )