Function rcl_subscription_get_rmw_handle

Function Documentation

rmw_subscription_t *rcl_subscription_get_rmw_handle(const rcl_subscription_t *subscription)

Return the rmw subscription handle.

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

  • subscription is NULL

  • subscription is invalid (never called init, called fini, or invalid)

The returned handle is made invalid if the subscription is finalized or if rcl_shutdown() is called. The returned handle is not guaranteed to be valid for the life time of the subscription as it may be finalized and recreated itself. Therefore it is recommended to get the handle from the subscription 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:

subscription[in] pointer to the rcl subscription

Returns:

rmw subscription handle if successful, otherwise NULL