Migration of Legatus codebase to Qt6 with RTI Connext DDS 7.7 integration is partially complete. Core DDS targets build successfully, but ProjectDataManagement module blocks full ddsfts compilation due to IDL definition conflicts.

This commit is contained in:
torsten committed 2026-09-07 19:18:30 +02:00
1 parent 283e89e3c9
commit 758ae0f53f
12 files changed
+203 -144

No files matched your search

@@ -2,17 +2,49 @@
/**
* @file generic_data_reader.h
* @brief Stub header for BUILD_RTI=OFF configuration
* @brief Generic Data Reader wrapper for DDS
*
* This file provides minimal stub definitions for DDS Generic Data Reader
* when RTI Connext DDS is not available (BUILD_RTI=OFF).
* Provides GenericDataReader template class that wraps RTI DataReader
* when BUILD_RTI=ON, or provides stub implementation when BUILD_RTI=OFF.
*/
#include <dds/sub/subfwd.hpp>
namespace DDSGeneric
{
#ifdef BUILD_RTI
// RTI DDS is available - include the real implementation from RTI headers
// DataReader is already defined in <dds/sub/subfwd.hpp> with signature:
// template <typename T, template <typename Q> class DELEGATE = dds::sub::detail::DataReaderImpl>
// class DataReader;
// RTI DDS is available - include full DynamicDataReader implementation
#include <Lts/DDS/Generic/dynamic_data_reader.h>
// Forward declaration stub for DataReader
// RTI 7.7 signature: template <typename T, template <typename Q> class DELEGATE = dds::sub::detail::DataReaderImpl>
template<typename T>
class GenericDataReader {
public:
using DataType = T;
using ReaderType = dds::sub::DataReader<T>;
// Minimal interface - extend as needed
bool has_data() const { return false; }
T read_data() { return T{}; }
void cleanup() {}
// Access to underlying RTI reader if needed
ReaderType& reader() { return m_reader; }
const ReaderType& reader() const { return m_reader; }
private:
ReaderType m_reader;
};
template<typename T>
class GenericDataReaderContentFilter {
public:
using DataType = T;
// Minimal stub - extend as needed
};
#else
// BUILD_RTI=OFF: Provide minimal stub definitions
@@ -53,4 +85,32 @@ public:
void cleanup() {}
};
#endif // BUILD_RTI
template<typename T>
class GenericDataReaderContentFilter {
public:
using DataType = T;
// Minimal stub - extend as needed
};
// DynamicDataReader stub for BUILD_RTI=OFF
class DynamicDataReader {
public:
using TopicType = void*;
using DataReader = void*;
using DataTopic = void*;
DynamicDataReader() {}
~DynamicDataReader() {}
bool create(const void* domainParticipant, const void* ddsSubscriber,
const std::string& specialTopicName, const void* structType)
{
return false;
}
bool hasSamples() const { return false; }
};
#endif // BUILD_RTI
} // namespace DDSGeneric