Adds ktexttemplate as apt package to new_docker_build.sh and builds successfully
This commit is contained in:
39 files changed
+647
-208
No files matched your search
@@ -8,45 +8,23 @@
|
||||
* when BUILD_RTI=ON, or provides stub implementation when BUILD_RTI=OFF.
|
||||
*/
|
||||
|
||||
#include <dds/sub/subfwd.hpp>
|
||||
#include <functional>
|
||||
#include <string>
|
||||
|
||||
#ifdef BUILD_RTI
|
||||
// RTI DDS is available - include full implementation from Lts
|
||||
// MUST be included BEFORE namespace DDSGeneric to avoid namespace pollution
|
||||
#include <Lts/DDS/Generic/dynamic_data_reader.h>
|
||||
#include <Lts/DDS/Generic/generic_data_reader.h>
|
||||
|
||||
namespace DDSGeneric
|
||||
{
|
||||
|
||||
#ifdef BUILD_RTI
|
||||
// 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
|
||||
};
|
||||
// Full implementation is in Lts/DDS/Generic/generic_data_reader.h
|
||||
// This file just provides the include path redirection
|
||||
} // namespace DDSGeneric
|
||||
|
||||
#else
|
||||
// BUILD_RTI=OFF: Provide minimal stub definitions
|
||||
// BUILD_RTI=OFF: Provide minimal stub definitions for RTI types
|
||||
|
||||
namespace dds {
|
||||
namespace sub {
|
||||
@@ -73,16 +51,95 @@ public:
|
||||
} // namespace sub
|
||||
} // namespace dds
|
||||
|
||||
// GenericDataReader stub template
|
||||
namespace DDSGeneric
|
||||
{
|
||||
|
||||
// GenericDataReader stub template (only when BUILD_RTI=OFF)
|
||||
template<typename T>
|
||||
class GenericDataReader {
|
||||
public:
|
||||
using DataType = T;
|
||||
using TopicType = T;
|
||||
using TopicTypeRead = T;
|
||||
using DataReader = void*;
|
||||
using DataTopic = void*;
|
||||
using DataReaderQos = void*;
|
||||
using SubscriberCallback = std::function<void(const TopicTypeRead&, int)>;
|
||||
using SubscriberCallbackWithSampleInfo = std::function<void(const TopicTypeRead&, const void*)>;
|
||||
|
||||
// Minimal stub methods - extend as needed
|
||||
bool has_data() const { return false; }
|
||||
T read_data() { return T{}; }
|
||||
void cleanup() {}
|
||||
GenericDataReader()
|
||||
: m_dataReader(nullptr), m_ddsTopic(nullptr), m_bHaveSubscriberCallback(false)
|
||||
{
|
||||
}
|
||||
|
||||
virtual ~GenericDataReader()
|
||||
{
|
||||
m_ddsTopic = nullptr;
|
||||
m_dataReader = nullptr;
|
||||
}
|
||||
|
||||
DataReader getDataReader() const
|
||||
{
|
||||
return m_dataReader;
|
||||
}
|
||||
|
||||
bool create(const void* domainParticipant, const void* ddsSubscriber,
|
||||
const std::string& topicName = std::string(),
|
||||
bool bCreateDataReader = true)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
bool hasSamples() const
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
void* readAlive(bool& bSeenNewSamples)
|
||||
{
|
||||
bSeenNewSamples = false;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
void* takeAlive(bool& bSeenNewSamples)
|
||||
{
|
||||
bSeenNewSamples = false;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
void* takeDisposed()
|
||||
{
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
template <typename C> bool read(C callbackFunc)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
void setHaveSubscriberCallback(bool bHave)
|
||||
{
|
||||
m_bHaveSubscriberCallback = bHave;
|
||||
}
|
||||
|
||||
std::string topicName() const
|
||||
{
|
||||
return std::string();
|
||||
}
|
||||
|
||||
DataReader dataReader() const
|
||||
{
|
||||
return m_dataReader;
|
||||
}
|
||||
|
||||
virtual void recreateReader()
|
||||
{
|
||||
}
|
||||
|
||||
protected:
|
||||
DataReader m_dataReader;
|
||||
DataReaderQos m_dataReaderQos;
|
||||
DataTopic m_ddsTopic;
|
||||
bool m_bHaveSubscriberCallback;
|
||||
};
|
||||
|
||||
template<typename T>
|
||||
@@ -111,6 +168,6 @@ public:
|
||||
bool hasSamples() const { return false; }
|
||||
};
|
||||
|
||||
#endif // BUILD_RTI
|
||||
} // namespace DDSGeneric
|
||||
|
||||
} // namespace DDSGeneric
|
||||
#endif // BUILD_RTI
|
||||
Reference in new issue
Block a user