Function rcl_publisher_get_rmw_handle

Function Documentation

rmw_publisher_t *rcl_publisher_get_rmw_handle(const rcl_publisher_t *publisher)

Return the rmw publisher handle.

The handle returned is a pointer to the internally held rmw handle. This function can fail, and therefore return NULL, if the:

  • publisher is NULL

  • publisher is invalid (never called init, called fini, or invalid node)

The returned handle is made invalid if the publisher is finalized or if rcl_shutdown() is called. The returned handle is not guaranteed to be valid for the life time of the publisher as it may be finalized and recreated itself. Therefore it is recommended to get the handle from the publisher using this function each time it is needed and avoid use of the handle concurrently with functions that might change it.

Attribute

Adherence

Allocates Memory

No

Thread-Safe

No

Uses Atomics

No

Lock-Free

Yes

Parameters:

publisher[in] pointer to the rcl publisher

Returns:

rmw publisher handle if successful, otherwise NULL