66#ifdef VLINK_SUPPORT_DDSC
71#include <shared_mutex>
100 explicit DdscConf(
const std::string& _topic, int32_t _domain = 0, int32_t _depth = 0,
const std::string& _qos =
"");
108 [[nodiscard]]
bool operator==(
const DdscConf& conf)
const noexcept;
116 [[nodiscard]]
bool operator!=(
const DdscConf& conf)
const noexcept;
123 [[nodiscard]]
TransportType get_transport_type()
const override;
137 static void register_qos(
const std::string& name,
const Qos& qos);
140 static void register_qos_internal(
const std::string& name,
const Qos& qos);
142 static const Qos& find_qos(
const std::string& name);
144 friend class DdscFactory;
145 static std::map<std::string, Qos> qos_map_;
146 static std::shared_mutex mtx_;
147 static constexpr const char* kRespSuffix{
"___resp"};
148#ifndef VLINK_ENABLE_C_INTERFACE
159inline DdscConf::DdscConf(
const std::string& _topic, int32_t _domain, int32_t _depth,
const std::string& _qos)
160 : topic(_topic), domain(_domain), depth(_depth), qos(_qos) {}
162inline bool DdscConf::operator==(
const DdscConf& conf)
const noexcept {
163 return topic == conf.topic && domain == conf.domain && depth == conf.depth && qos == conf.qos;
166inline bool DdscConf::operator!=(
const DdscConf& conf)
const noexcept {
return !(*
this == conf); }
168inline TransportType DdscConf::get_transport_type()
const {
return TransportType::kDdsc; }
Abstract transport configuration base class and associated helper macros.
#define VLINK_CONF_IMPL(classname)
Standard boilerplate for concrete Conf subclass declarations.
定义 conf.h:227
#define VLINK_DECLARE_GLOBAL_PROPERTY()
Declares per-transport global state: thread count and property storage.
定义 conf.h:292
#define VLINK_ALLOW_IMPL_TYPE(type)
Declares a static constexpr bitmask of supported ImplType values.
定义 conf.h:268
#define VLINK_EXPORT
定义 macros.h:85
TransportType
Enumeration of all supported transport backends.
定义 types.h:107
Quality of Service (QoS) policy aggregate for VLink publishers and subscribers.
Abstract base class for VLink transport configuration objects.
定义 conf.h:83