Function rcl_action_send_cancel_request
Defined in File action_client.h
Function Documentation
-
rcl_ret_t rcl_action_send_cancel_request(const rcl_action_client_t *action_client, const void *ros_cancel_request, int64_t *sequence_number)
Send a cancel request for a goal using a rcl_action_client_t.
This is a non-blocking call.
The caller is responsible for ensuring that the type of
ros_cancel_requestand the type associate with the client (via the type support) match. Passing a different type produces undefined behavior and cannot be checked by this function and therefore no deliberate error will occur.The following cancel policy applies based on the goal ID and the timestamp provided by the
ros_cancel_requestmessage:If the goal ID is zero and timestamp is zero, cancel all goals.
If the goal ID is zero and timestamp is not zero, cancel all goals accepted at or before the timestamp.
If the goal ID is not zero and timestamp is zero, cancel the goal with the given ID regardless of the time it was accepted.
If the goal ID is not zero and timestamp is not zero, cancel the goal with the given ID and all goals accepted at or before the timestamp.
Attribute
Adherence
Allocates Memory
No
Thread-Safe
No
Uses Atomics
No
Lock-Free
Yes
- Parameters:
action_client – [in] handle to the client that will make the cancel request
ros_cancel_request – [in] pointer the ROS cancel request message
sequence_number – [out] pointer to the cancel request sequence number
- Returns:
RCL_RET_OKif the response was taken successfully, or- Returns:
RCL_RET_INVALID_ARGUMENTif any arguments are invalid, or- Returns:
RCL_RET_ACTION_CLIENT_INVALIDif the action client is invalid, or- Returns:
RCL_RET_ERRORif an unspecified error occurs.