Function rcl_subscription_fini

Function Documentation

rcl_ret_t rcl_subscription_fini(rcl_subscription_t *subscription, rcl_node_t *node)

Finalize a rcl_subscription_t.

After calling, the node will no longer be subscribed on this topic (assuming this is the only subscription on this topic in this node).

After calling, calls to rcl_wait and rcl_take will fail when using this subscription. Additioanlly rcl_wait will be interrupted if currently blocking. However, the given node handle is still valid.

Attribute

Adherence

Allocates Memory

Yes

Thread-Safe

No

Uses Atomics

No

Lock-Free

Yes

Parameters:
  • subscription[inout] handle to the subscription to be deinitialized

  • node[in] a valid (not finalized) handle to the node used to create the subscription

Returns:

RCL_RET_OK if subscription was deinitialized successfully, or

Returns:

RCL_RET_INVALID_ARGUMENT if any arguments are invalid, or

Returns:

RCL_RET_SUBSCRIPTION_INVALID if the subscription is invalid, or

Returns:

RCL_RET_NODE_INVALID if the node is invalid, or

Returns:

RCL_RET_ERROR if an unspecified error occurs.