Class CDescGate

Nested Relationships

Nested Types

Class Documentation

class CDescGate

Public Types

using TopicIdInfoMap = std::map<STopicId, SDataTypeInformation>
using TopicEventCallbackMap = std::map<Registration::CallbackToken, Registration::TopicEventCallbackT>
using ServiceIdInfoMap = std::map<SServiceId, ServiceMethodInformationSetT>

Public Functions

CDescGate()
~CDescGate()
void ApplySample(const Registration::Sample &sample_, eTLayerType layer_)
std::set<STopicId> GetPublisherIDs() const
bool GetPublisherInfo(const STopicId &id_, SDataTypeInformation &topic_info_) const
Registration::CallbackToken AddPublisherEventCallback(const Registration::TopicEventCallbackT &callback_)
void RemPublisherEventCallback(Registration::CallbackToken token_)
std::set<STopicId> GetSubscriberIDs() const
bool GetSubscriberInfo(const STopicId &id_, SDataTypeInformation &topic_info_) const
Registration::CallbackToken AddSubscriberEventCallback(const Registration::TopicEventCallbackT &callback_)
void RemSubscriberEventCallback(Registration::CallbackToken token_)
std::set<SServiceId> GetServerIDs() const
bool GetServerInfo(const SServiceId &id_, ServiceMethodInformationSetT &service_info_) const
std::set<SServiceId> GetClientIDs() const
bool GetClientInfo(const SServiceId &id_, ServiceMethodInformationSetT &service_info_) const
CDescGate(const CDescGate&) = delete
CDescGate &operator=(const CDescGate&) = delete
CDescGate(CDescGate&&) = delete
CDescGate &operator=(CDescGate&&) = delete

Protected Functions

Registration::CallbackToken CreateToken()

Protected Attributes

STopicIdInfoMap m_publisher_info_map
STopicEventCallbackMap m_publisher_callback_map
STopicIdInfoMap m_subscriber_info_map
STopicEventCallbackMap m_subscriber_callback_map
SServiceIdInfoMap m_service_info_map
SServiceIdInfoMap m_client_info_map
mutable std::mutex m_callback_token_mtx
std::atomic<Registration::CallbackToken> m_callback_token = {0}

Protected Static Functions

static std::set<STopicId> GetTopicIDs(const STopicIdInfoMap &topic_info_map_)
static bool GetTopic(const STopicId &id_, const STopicIdInfoMap &topic_info_map_, SDataTypeInformation &topic_info_)
static std::set<SServiceId> GetServiceIDs(const SServiceIdInfoMap &service_method_info_map_)
static bool GetService(const SServiceId &id_, const SServiceIdInfoMap &service_method_info_map_, ServiceMethodInformationSetT &service_method_info_)
struct SServiceIdInfoMap

Public Members

mutable std::mutex mtx
ServiceIdInfoMap id_map
struct STopicEventCallbackMap

Public Members

mutable std::mutex mtx
TopicEventCallbackMap map
struct STopicIdInfoMap

Public Members

mutable std::mutex mtx
TopicIdInfoMap map