This class stores all the information about a message publisher. More...
#include <Publisher.hh>
Public Member Functions | |
MessagePublisher ()=default | |
Default constructor. More... | |
MessagePublisher (const MessagePublisher &_other) | |
Copy constructor. More... | |
MessagePublisher (const std::string &_topic, const std::string &_addr, const std::string &_ctrl, const std::string &_pUuid, const std::string &_nUuid, const std::string &_msgTypeName, const AdvertiseMessageOptions &_opts) | |
Constructor. More... | |
virtual | ~MessagePublisher ()=default |
Destructor. More... | |
std::string | Ctrl () const |
Get the ZeroMQ control address. This address is used by the subscribers to notify the publisher about the new subscription. More... | |
virtual void | FillDiscovery (msgs::Discovery &_msg) const final |
Populate a discovery message. More... | |
virtual size_t | MsgLength () const |
Get the total length of the message. More... | |
std::string | MsgTypeName () const |
Get the message type advertised by this publisher. More... | |
bool | operator!= (const MessagePublisher &_pub) const |
Inequality operator. This function checks if the given message publisher does not have identical Topic, Addr, PUuid, NUuid, Scope, Ctrl, and MsgTypeName strings to this object. More... | |
MessagePublisher & | operator= (const MessagePublisher &_other) |
Assignment operator. More... | |
bool | operator== (const MessagePublisher &_pub) const |
Equality operator. This function checks if the given message publisher has identical Topic, Addr, PUuid, NUuid, Scope, Ctrl, and MsgTypeName strings to this object. More... | |
virtual const AdvertiseMessageOptions & | Options () const |
Get the advertised options. More... | |
virtual size_t | Pack (char *_buffer) const |
Serialize the publisher. The caller has ownership of the buffer and is responsible for its [de]allocation. More... | |
void | SetCtrl (const std::string &_ctrl) |
Set the ZeroMQ control address of the publisher. More... | |
virtual void | SetFromDiscovery (const msgs::Discovery &_msg) |
Set data from a discovery message. More... | |
void | SetMsgTypeName (const std::string &_msgTypeName) |
Set the message type advertised by this publisher. More... | |
void | SetOptions (const AdvertiseMessageOptions &_opts) |
Set the advertised options. More... | |
virtual size_t | Unpack (const char *_buffer) |
Unserialize the publisher. More... | |
Public Member Functions inherited from Publisher | |
Publisher ()=default | |
Default constructor. More... | |
Publisher (const Publisher &_other) | |
Copy constructor. More... | |
Publisher (const std::string &_topic, const std::string &_addr, const std::string &_pUuid, const std::string &_nUuid, const AdvertiseOptions &_opts) | |
Constructor. More... | |
virtual | ~Publisher ()=default |
Destructor. More... | |
std::string | Addr () const |
Get the ZeroMQ address of the publisher. More... | |
std::string | NUuid () const |
Get the node UUID of the publisher. More... | |
bool | operator!= (const Publisher &_pub) const |
Inequality operator. This function checks if the given publisher does not have identical Topic, Addr, PUuid, NUuid, and Scope strings to this object. More... | |
Publisher & | operator= (const Publisher &_other) |
Assignment operator. More... | |
bool | operator== (const Publisher &_pub) const |
Equality operator. This function checks if the given publisher has identical Topic, Addr, PUuid, NUuid, and Scope strings to this object. More... | |
std::string | PUuid () const |
Get the process UUID of the publisher. return Process UUID. More... | |
void | SetAddr (const std::string &_addr) |
Set ZeroMQ address of the publisher. More... | |
void | SetNUuid (const std::string &_nUuid) |
Set the node UUID of the publisher. More... | |
void | SetOptions (const AdvertiseOptions &_opts) |
Set the advertised options. More... | |
void | SetPUuid (const std::string &_pUuid) |
Set the process UUID of the publisher. More... | |
void | SetTopic (const std::string &_topic) |
Set the topic name published by this publisher. More... | |
std::string | Topic () const |
Get the topic published by this publisher. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Publisher | |
size_t | MsgLengthInternal () const |
Get the total length of the message without counting the advertised options. This is useful when [un]serializing a derived publisher because we want to ignore the advertised options in the base publisher. More... | |
size_t | PackInternal (char *_buffer) const |
Serialize all fields except the advertise options. This is useful when we are serializing a derived class that contains its own advertise options. More... | |
size_t | UnpackInternal (const char *_buffer) |
Unserialize all fields except the advertise options. This is useful when we are unserializing a derived class that contains its own advertise options. More... | |
Protected Attributes inherited from Publisher | |
std::string | addr |
ZeroMQ address of the publisher. More... | |
std::string | nUuid |
Node UUID of the publisher. More... | |
std::string | pUuid |
Process UUID of the publisher. More... | |
std::string | topic |
Topic name. More... | |
Detailed Description
This class stores all the information about a message publisher.
Constructor & Destructor Documentation
◆ MessagePublisher() [1/3]
|
default |
Default constructor.
◆ MessagePublisher() [2/3]
|
explicit |
Constructor.
- Parameters
-
[in] _topic Topic name. [in] _addr ZeroMQ address. [in] _ctrl ZeroMQ control address. [in] _pUuid Process UUID. [in] _nUuid node UUID. [in] _msgTypeName Message type advertised by this publisher. [in] _opts Advertise options.
◆ MessagePublisher() [3/3]
MessagePublisher | ( | const MessagePublisher & | _other | ) |
Copy constructor.
- Parameters
-
[in] _other Other MessagePublisher object.
◆ ~MessagePublisher()
|
virtualdefault |
Destructor.
Member Function Documentation
◆ Ctrl()
std::string Ctrl | ( | ) | const |
Get the ZeroMQ control address. This address is used by the subscribers to notify the publisher about the new subscription.
- Returns
- ZeroMQ control address of the publisher.
- See also
- SetCtrl.
◆ FillDiscovery()
|
finalvirtual |
◆ MsgLength()
|
virtual |
Get the total length of the message.
- Returns
- Return the length of the message in bytes.
Reimplemented from Publisher.
◆ MsgTypeName()
std::string MsgTypeName | ( | ) | const |
Get the message type advertised by this publisher.
- Returns
- Message type.
◆ operator!=()
bool operator!= | ( | const MessagePublisher & | _pub | ) | const |
Inequality operator. This function checks if the given message publisher does not have identical Topic, Addr, PUuid, NUuid, Scope, Ctrl, and MsgTypeName strings to this object.
- Parameters
-
[in] _pub The message publisher to compare against.
- Returns
- True if this object does not match the provided object.
◆ operator=()
MessagePublisher& operator= | ( | const MessagePublisher & | _other | ) |
Assignment operator.
- Parameters
-
[in] _other The other MessagePublisher.
- Returns
- A reference to this instance.
◆ operator==()
bool operator== | ( | const MessagePublisher & | _pub | ) | const |
Equality operator. This function checks if the given message publisher has identical Topic, Addr, PUuid, NUuid, Scope, Ctrl, and MsgTypeName strings to this object.
- Parameters
-
[in] _pub The message publisher to compare against.
- Returns
- True if this object matches the provided object.
◆ Options()
|
virtual |
Get the advertised options.
- Returns
- The advertised options.
- See also
- SetOptions.
Reimplemented from Publisher.
◆ Pack()
|
virtual |
Serialize the publisher. The caller has ownership of the buffer and is responsible for its [de]allocation.
- Parameters
-
[out] _buffer Destination buffer in which the publisher will be serialized.
- Returns
- Number of bytes serialized.
Reimplemented from Publisher.
◆ SetCtrl()
void SetCtrl | ( | const std::string & | _ctrl | ) |
Set the ZeroMQ control address of the publisher.
- Parameters
-
[in] _ctrl New control address.
- See also
- Ctrl.
◆ SetFromDiscovery()
|
virtual |
◆ SetMsgTypeName()
void SetMsgTypeName | ( | const std::string & | _msgTypeName | ) |
Set the message type advertised by this publisher.
- Parameters
-
[in] _msgTypeName New message type.
- See also
- MsgTypeName.
◆ SetOptions()
void SetOptions | ( | const AdvertiseMessageOptions & | _opts | ) |
◆ Unpack()
|
virtual |
Unserialize the publisher.
- Parameters
-
[in] _buffer Input buffer with the data to be unserialized.
Reimplemented from Publisher.
The documentation for this class was generated from the following file: