11#ifndef RTCTK_TELSUB_DDSWAITSETIF_HPP
12#define RTCTK_TELSUB_DDSWAITSETIF_HPP
27using namespace rtctk::componentFramework;
55 std::map<std::string, DdsTopicOptions>
m_topics = {};
74 std::variant<eprosima::fastdds::dds::ReturnCode_t, InternalError>
code;
Declares AgnosticDataSamples.
static const DomainId_t DEFAULT_DOMAIN_ID
default Domain Id for different DDS
Definition dds.hpp:173
static const std::string DEFAULT_QOS_PROFILE
default profile name for different DDS QoSs
Definition dds.hpp:167
static const std::string TELEM_DP_QOS_FILE
default file name for different DDS QoSs
Definition dds.hpp:161
Container of DDS samples and associated sample information.
Definition agnosticDataSamples.hpp:75
virtual size_t GetNumberOfTopics() const noexcept=0
Returns the number of configured topics.
virtual std::optional< DdsWaitSetError > Take(std::chrono::nanoseconds timeout) noexcept=0
Takes new samples from DDS readers and updates data structure accessable from GetSamples()
DdsWaitSetIf() noexcept=default
virtual AgnosticDataSamples & GetSamples() noexcept=0
Returns reference to data structure holding taken data samples.
virtual void CheckDdsConnections()=0
Project-wide configuration header.
Declares some common DDS functionality.
InternalError
For internal errors.
Definition ddsWaitSetIf.hpp:67
@ LUT_ENTRY_NOT_FOUND
Definition ddsWaitSetIf.hpp:67
Definition ddsSub.hpp:155
Parameter set to be passed to classes deriving from DdsWaitSetIf.
Definition ddsWaitSetIf.hpp:49
std::map< std::string, DdsTopicOptions > m_topics
Definition ddsWaitSetIf.hpp:55
int32_t m_domain_id
Definition ddsWaitSetIf.hpp:50
std::string m_qos_profile
Definition ddsWaitSetIf.hpp:52
std::string m_component_name
Definition ddsWaitSetIf.hpp:61
std::string m_qos_file
Definition ddsWaitSetIf.hpp:51
std::vector< std::string > m_interface_white_list
Definition ddsWaitSetIf.hpp:59
Options for a single topic.
Definition ddsWaitSetIf.hpp:34
std::string multicast_address
Definition ddsWaitSetIf.hpp:36
Error reporting struct, contains the return code and topic where the error occurred.
Definition ddsWaitSetIf.hpp:72
std::variant< eprosima::fastdds::dds::ReturnCode_t, InternalError > code
Definition ddsWaitSetIf.hpp:74
bool operator==(const DdsWaitSetError &b) const
Definition ddsWaitSetIf.hpp:76
std::string topic
Definition ddsWaitSetIf.hpp:73
friend void PrintTo(const DdsWaitSetError &error, std::ostream *os)
Definition ddsWaitSetIf.hpp:79
std::string Message() const
Definition ddsWaitSet.cpp:81