From 8d456c7d1ab4a59ca190a94a58db392a2c698c54 Mon Sep 17 00:00:00 2001 From: twi-devel Date: Sun, 23 Aug 2026 14:39:10 +0200 Subject: [PATCH] BUILD_RTI DDS Module Guard Fixes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add missing m_logger member declarations to GenericDataWriter, GenericDataReader, GenericDtcImplSubscriberTemplate - Add DynamicDataImpl.hpp include for complete type in publisher.h/cpp - Wrap dds_connector.cpp implementation in #if BUILD_RTI guards - Fix stub signatures in dds_connector.h to match implementation - Set CMAKE_CXX_STANDARD to 17 (RTI 7.7.0 hard requirement) RTI Connext DDS 7.7.0 only supports C++14/C++17. C++20/23 causes header compilation errors. Cannot mix C++ variants. Remaining Qt6 issues (separate from RTI work): - QJsonDocument::toBinaryData/fromBinaryData → toJson/fromJson - QJsonObject initializer list syntax in training_area_telegrams.cpp Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- qt6-after/qt6-migrated-legatus/CMakeLists.txt | 4 ++-- .../Lts/DDS/DDSConnector/dds_connector.cpp | 4 ++++ .../Lts/DDS/DDSConnector/dds_connector.h | 8 -------- .../Lts/DDS/DDSConnector/publisher.cpp | 1 + .../qt6-migrated-legatus/Lts/DDS/DDSConnector/publisher.h | 1 + .../qt6-migrated-legatus/Lts/DDS/DTC/generic_dtc_impl.h | 2 ++ .../qt6-migrated-legatus/Lts/DDS/Generic/generic_base.h | 7 +++++++ .../Lts/DDS/Generic/generic_data_reader.h | 1 + .../Lts/DDS/Generic/generic_data_writer.h | 1 + .../Lts/DDS/Generic/subscriber_listener.cpp | 2 +- .../Lts/Plugins/ComponentMonitor/Data/cmo_data_plugin.h | 2 +- .../Gui/SituationMap/AdapterDds/mounting_point_to_map.h | 2 +- 12 files changed, 22 insertions(+), 13 deletions(-) diff --git a/qt6-after/qt6-migrated-legatus/CMakeLists.txt b/qt6-after/qt6-migrated-legatus/CMakeLists.txt index dee33d824..b52028f5d 100755 --- a/qt6-after/qt6-migrated-legatus/CMakeLists.txt +++ b/qt6-after/qt6-migrated-legatus/CMakeLists.txt @@ -63,8 +63,8 @@ include_directories(${CMAKE_SOURCE_DIR}/include/ProjectDataManagement) include_directories(${CMAKE_BINARY_DIR}/Lts/Services/ProjectDataManagement) include_directories(${CMAKE_SOURCE_DIR}/Lts/Proxies/GuezNasat) include_directories(${CMAKE_SOURCE_DIR}/Lts/DDS) -SET(CMAKE_CXX_STANDARD 20) -SET(CMAKE_CXX_STANDARD_REQUIRED 14) +SET(CMAKE_CXX_STANDARD 17) +SET(CMAKE_CXX_STANDARD_REQUIRED ON) SET(CMAKE_VISIBILITY_INLINES_HIDDEN ON) SET(CMAKE_CXX_VISIBILITY_PRESET hidden) SET(CMAKE_POSITION_INDEPENDENT_CODE ON) diff --git a/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/dds_connector.cpp b/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/dds_connector.cpp index eb2c0f5df..54f49e99b 100644 --- a/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/dds_connector.cpp +++ b/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/dds_connector.cpp @@ -2,6 +2,8 @@ #include "dds_connector.h" +#if BUILD_RTI + #include "publisher.h" #include "subscriber.h" @@ -250,3 +252,5 @@ void DdsConnector::createWaitSetHandler() } } // namespace DDSConnector + +#endif // BUILD_RTI diff --git a/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/dds_connector.h b/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/dds_connector.h index 88baf934b..fb85bac0e 100644 --- a/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/dds_connector.h +++ b/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/dds_connector.h @@ -207,11 +207,6 @@ class DDSCONNECTOR_EXPORT DdsConnector void initDomainParticipant() {} #endif - private: - NGL::INGLLogger& m_logger; - void initInternal(); - void createWaitSetHandler(); - private: NGL::INGLLogger& m_logger; int m_domainId; @@ -238,7 +233,6 @@ class CoherentSet } private: - NGL::INGLLogger& m_logger; dds::pub::CoherentSet m_coherentSet; }; #else @@ -247,8 +241,6 @@ class CoherentSet { public: explicit CoherentSet(const std::shared_ptr& /*connector*/) {} - private: - NGL::INGLLogger& m_logger; }; #endif diff --git a/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/publisher.cpp b/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/publisher.cpp index 2f10e90db..028336217 100755 --- a/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/publisher.cpp +++ b/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/publisher.cpp @@ -4,6 +4,7 @@ #include "pub_sub_base_p.h" #include +#include #include #include diff --git a/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/publisher.h b/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/publisher.h index 0d3931e66..5029706f6 100755 --- a/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/publisher.h +++ b/qt6-after/qt6-migrated-legatus/Lts/DDS/DDSConnector/publisher.h @@ -6,6 +6,7 @@ #include #include #include +#include #include "pub_sub_base.h" diff --git a/qt6-after/qt6-migrated-legatus/Lts/DDS/DTC/generic_dtc_impl.h b/qt6-after/qt6-migrated-legatus/Lts/DDS/DTC/generic_dtc_impl.h index 5055d3d7f..af6a6c6d1 100644 --- a/qt6-after/qt6-migrated-legatus/Lts/DDS/DTC/generic_dtc_impl.h +++ b/qt6-after/qt6-migrated-legatus/Lts/DDS/DTC/generic_dtc_impl.h @@ -254,6 +254,8 @@ class GenericDtcImplSubscriberTemplate : public DDSGeneric::SubscriberListenerCa SubscriberCallback m_subscriberCallback; QAtomicInt m_writerState; + + NGL::INGLLogger& m_logger; }; template diff --git a/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/generic_base.h b/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/generic_base.h index 55c87e004..58359d901 100755 --- a/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/generic_base.h +++ b/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/generic_base.h @@ -6,6 +6,11 @@ #include #include +#if BUILD_RTI +#include +#include +#endif + class QObject; class QMetaMethod; @@ -26,6 +31,8 @@ struct topic_type_name { #endif } }; + +#if BUILD_RTI template<> struct topic_type_name { static std::string value() { diff --git a/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/generic_data_reader.h b/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/generic_data_reader.h index bc2368117..c6fd17daa 100644 --- a/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/generic_data_reader.h +++ b/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/generic_data_reader.h @@ -308,6 +308,7 @@ template class GenericDataReader std::vector m_newSamplesDuringRead; bool m_bHaveSubscriberCallback; + NGL::INGLLogger& m_logger; }; template class GenericDataReaderContentFilter final : public GenericDataReader diff --git a/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/generic_data_writer.h b/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/generic_data_writer.h index 4c036aab6..c58d8ad4b 100644 --- a/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/generic_data_writer.h +++ b/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/generic_data_writer.h @@ -126,6 +126,7 @@ template class GenericDataWriter final private: DataWriter m_dataWriter; DataTopic m_ddsTopic; + NGL::INGLLogger& m_logger; }; } // namespace DDSGeneric diff --git a/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/subscriber_listener.cpp b/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/subscriber_listener.cpp index 94ef535bf..d13db8c8b 100644 --- a/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/subscriber_listener.cpp +++ b/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/subscriber_listener.cpp @@ -9,7 +9,7 @@ namespace DDSGeneric { SubscriberListener::SubscriberListener() - : m_bPrepareForShutdown(false), m_logger(DDS::getLogger("SubscriberListener", DDS::DataType::DATA_TOPIC_CLIENT)) + : m_logger(DDS::getLogger("SubscriberListener", DDS::DataType::DATA_TOPIC_CLIENT)), m_bPrepareForShutdown(false) { qRegisterMetaType("std::string"); DEBUG_LOG(m_logger) << "SubscriberListener initialized, this " << this; diff --git a/qt6-after/qt6-migrated-legatus/Lts/Plugins/ComponentMonitor/Data/cmo_data_plugin.h b/qt6-after/qt6-migrated-legatus/Lts/Plugins/ComponentMonitor/Data/cmo_data_plugin.h index 2435a7d04..b9a7e71f2 100755 --- a/qt6-after/qt6-migrated-legatus/Lts/Plugins/ComponentMonitor/Data/cmo_data_plugin.h +++ b/qt6-after/qt6-migrated-legatus/Lts/Plugins/ComponentMonitor/Data/cmo_data_plugin.h @@ -4,7 +4,7 @@ #pragma once #include -#include +#include namespace ComponentMonitor { diff --git a/qt6-after/qt6-migrated-legatus/Lts/Plugins/SituationMapPlugin/Gui/SituationMap/AdapterDds/mounting_point_to_map.h b/qt6-after/qt6-migrated-legatus/Lts/Plugins/SituationMapPlugin/Gui/SituationMap/AdapterDds/mounting_point_to_map.h index d2f9e6dcf..808481f14 100755 --- a/qt6-after/qt6-migrated-legatus/Lts/Plugins/SituationMapPlugin/Gui/SituationMap/AdapterDds/mounting_point_to_map.h +++ b/qt6-after/qt6-migrated-legatus/Lts/Plugins/SituationMapPlugin/Gui/SituationMap/AdapterDds/mounting_point_to_map.h @@ -12,7 +12,7 @@ #include "resource_manager_mode.h" #include #include -#include +#include #include #include #include