Class CPublisher
Defined in File publisher.h
Class Documentation
-
class CPublisher
eCAL publisher class.
Public Functions
-
ECAL_API_EXPORTED_MEMBER CPublisher(const std::string &topic_name_, const SDataTypeInformation &data_type_info_ = SDataTypeInformation(), const Publisher::Configuration &config_ = GetPublisherConfiguration())
Constructor.
- Parameters:
topic_name_ – Unique topic name.
data_type_info_ – Topic data type information (encoding, type, descriptor).
config_ – Optional configuration parameters.
-
ECAL_API_EXPORTED_MEMBER CPublisher(const std::string &topic_name_, const SDataTypeInformation &data_type_info_, const PubEventCallbackT &event_callback_, const Publisher::Configuration &config_ = GetPublisherConfiguration())
Constructor.
- Parameters:
topic_name_ – Unique topic name.
data_type_info_ – Topic data type information (encoding, type, descriptor).
event_callback_ – The publisher event callback funtion.
config_ – Optional configuration parameters.
-
virtual ECAL_API_EXPORTED_MEMBER ~CPublisher()
Destructor.
-
CPublisher(const CPublisher&) = delete
CPublishers are non-copyable.
-
CPublisher &operator=(const CPublisher&) = delete
CPublishers are non-copyable.
-
ECAL_API_EXPORTED_MEMBER CPublisher(CPublisher &&rhs) noexcept
CPublishers are move-enabled.
- ECAL_API_EXPORTED_MEMBER CPublisher & operator= (CPublisher &&rhs) noexcept
CPublishers are move-enabled.
- ECAL_API_EXPORTED_MEMBER bool Send (const void *buf_, size_t len_, long long time_=DEFAULT_TIME_ARGUMENT)
Send a message to all subscribers.
- Parameters:
buf_ – Pointer to content buffer.
len_ – Length of buffer.
time_ – Send time (-1 = use eCAL system time in us, default = -1).
- Returns:
True if succeeded, false if not.
- ECAL_API_EXPORTED_MEMBER bool Send (CPayloadWriter &payload_, long long time_=DEFAULT_TIME_ARGUMENT)
Send a message to all subscribers.
- Parameters:
payload_ – Payload writer.
time_ – Send time (-1 = use eCAL system time in us, default = -1).
- Returns:
True if succeeded, false if not.
- ECAL_API_EXPORTED_MEMBER bool Send (const std::string &payload_, long long time_=DEFAULT_TIME_ARGUMENT)
Send a message to all subscribers.
- Parameters:
payload_ – Payload string.
time_ – Send time (-1 = use eCAL system time in us, default = -1).
- Returns:
True if succeeded, false if not.
- ECAL_API_EXPORTED_MEMBER size_t GetSubscriberCount () const
Query the number of subscribers.
- Returns:
Number of subscribers.
- ECAL_API_EXPORTED_MEMBER const std::string & GetTopicName () const
Retrieve the topic name.
- Returns:
The topic name.
- ECAL_API_EXPORTED_MEMBER const STopicId & GetTopicId () const
Retrieve the topic id.
- Returns:
The topic id.
- ECAL_API_EXPORTED_MEMBER const SDataTypeInformation & GetDataTypeInformation () const
Gets description of the connected topic.
- Returns:
The topic information.
Public Static Attributes
- static constexpr ECAL_API_EXPORTED_MEMBER long long DEFAULT_TIME_ARGUMENT = -1
Use DEFAULT_TIME_ARGUMENT in the
Send()
function to let eCAL determine the send timestamp
-
ECAL_API_EXPORTED_MEMBER CPublisher(const std::string &topic_name_, const SDataTypeInformation &data_type_info_ = SDataTypeInformation(), const Publisher::Configuration &config_ = GetPublisherConfiguration())