pub struct PublisherGid {
pub data: [u8; 16],
pub implementation_identifier: *const c_char,
}
Expand description
An identifier for a publisher in the local context.
To quote the rmw
documentation:
The identifier uniquely identifies the publisher for the local context, but it will not necessarily be the same identifier given in other contexts or processes for the same publisher. Therefore the identifier will uniquely identify the publisher within your application but may disagree about the identifier for that publisher when compared to another application. Even with this limitation, when combined with the publisher sequence number it can uniquely identify a message within your local context. Publisher GIDs generated by the RMW implementation could collide at some point, in which case it is not possible to distinguish which publisher sent the message. The details of how GIDs are generated are RMW implementation dependent.
It is possible the the RMW implementation needs to reuse a publisher GID, due to running out of unique identifiers or some other constraint, in which case the RMW implementation may document what happens in that case, but that behavior is not defined here. However, this should be avoided, if at all possible, by the RMW implementation, and should be unlikely to happen in practice.
Fields§
§data: [u8; 16]
Bytes identifying a publisher in the RMW implementation.
implementation_identifier: *const c_char
A string containing the RMW implementation’s name.
The data
member only uniquely identifies the publisher within
this RMW implementation.
It is not converted to a CString
, since most people who request a MessageInfo
do not need it.
Trait Implementations§
Source§impl Clone for PublisherGid
impl Clone for PublisherGid
Source§fn clone(&self) -> PublisherGid
fn clone(&self) -> PublisherGid
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more