15 #ifndef RCL_ACTION__ACTION_SERVER_H_ 16 #define RCL_ACTION__ACTION_SERVER_H_ 30 #include "rosidl_generator_c/action_type_support_struct.h" 33 struct rcl_action_server_impl_t;
38 struct rcl_action_server_impl_t *
impl;
175 const rosidl_action_type_support_t * type_support,
176 const char * action_name,
276 void * ros_goal_request);
324 void * ros_goal_response);
435 void * ros_feedback);
492 const void * status_message);
532 void * ros_result_request);
568 void * ros_result_response);
620 size_t expired_goals_capacity,
621 size_t * num_expired);
686 void * ros_cancel_request);
759 void * ros_cancel_response);
933 #endif // RCL_ACTION__ACTION_SERVER_H_
RCL_ACTION_PUBLIC bool rcl_action_server_is_valid_except_context(const rcl_action_server_t *action_server)
Check if an action server is valid without erroring if the library is shutting down.
#define RCL_ACTION_PUBLIC
Definition: visibility_control.h:50
rmw_qos_profile_t feedback_topic_qos
Definition: action_server.h:48
struct rcl_action_server_t rcl_action_server_t
Structure which encapsulates a ROS Action Server.
Structure which encapsulates a ROS Action Server.
Definition: action_server.h:36
rcl_duration_t result_timeout
Goal handles that have results longer than this time are deallocated.
Definition: action_server.h:54
RCL_ACTION_PUBLIC const char * rcl_action_server_get_action_name(const rcl_action_server_t *action_server)
Get the action name for an action server.
RCL_ACTION_PUBLIC rcl_action_server_options_t rcl_action_server_get_default_options(void)
Return the default action server options in a rcl_action_server_options_t.
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_take_result_request(const rcl_action_server_t *action_server, rmw_request_id_t *request_header, void *ros_result_request)
Take a pending result request using an action server.
RCL_ACTION_PUBLIC bool rcl_action_server_goal_exists(const rcl_action_server_t *action_server, const rcl_action_goal_info_t *goal_info)
Check if a goal is already being tracked by an action server.
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_get_goal_status_array(const rcl_action_server_t *action_server, rcl_action_goal_status_array_t *status_message)
Get a status array message for accepted goals associated with an action server.
RCL_ACTION_PUBLIC bool rcl_action_server_is_valid(const rcl_action_server_t *action_server)
Check if an action server is valid.
rcl_allocator_t allocator
Custom allocator for the action server, used for incidental allocations.
Definition: action_server.h:52
struct rcl_action_server_options_t rcl_action_server_options_t
Options available for a rcl_action_server_t.
rmw_qos_profile_t cancel_service_qos
Definition: action_server.h:46
Options available for a rcl_action_server_t.
Definition: action_server.h:42
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_take_goal_request(const rcl_action_server_t *action_server, rmw_request_id_t *request_header, void *ros_goal_request)
Take a pending ROS goal using an action server.
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_server_get_goal_handles(const rcl_action_server_t *action_server, rcl_action_goal_handle_t ***goal_handles, size_t *num_goals)
Get the goal handles for all goals an action server is tracking.
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_process_cancel_request(const rcl_action_server_t *action_server, const rcl_action_cancel_request_t *cancel_request, rcl_action_cancel_response_t *cancel_response)
Process a cancel request using an action server.
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_take_cancel_request(const rcl_action_server_t *action_server, rmw_request_id_t *request_header, void *ros_cancel_request)
Take a pending cancel request using an action server.
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_server_init(rcl_action_server_t *action_server, rcl_node_t *node, rcl_clock_t *clock, const rosidl_action_type_support_t *type_support, const char *action_name, const rcl_action_server_options_t *options)
Initialize an action server.
RCL_ACTION_PUBLIC rcl_action_goal_handle_t * rcl_action_accept_new_goal(rcl_action_server_t *action_server, const rcl_action_goal_info_t *goal_info)
Accept a new goal using an action server.
rmw_qos_profile_t goal_service_qos
Middleware quality of service settings for the action server.
Definition: action_server.h:45
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_send_goal_response(const rcl_action_server_t *action_server, rmw_request_id_t *response_header, void *ros_goal_response)
Send a response for a goal request to an action client using an action server.
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_server_fini(rcl_action_server_t *action_server, rcl_node_t *node)
Finalize an action server.
RCL_ACTION_PUBLIC rcl_action_server_t rcl_action_get_zero_initialized_server(void)
Return a rcl_action_server_t struct with members set to NULL.
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_send_result_response(const rcl_action_server_t *action_server, rmw_request_id_t *response_header, void *ros_result_response)
Send a result response using an action server.
action_msgs__msg__GoalInfo rcl_action_goal_info_t
Definition: types.h:66
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_publish_feedback(const rcl_action_server_t *action_server, void *ros_feedback)
Publish a ROS feedback message for an active goal using an action server.
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_publish_status(const rcl_action_server_t *action_server, const void *status_message)
Publish a status array message for accepted goals associated with an action server.
Goal handle for an action.
Definition: goal_handle.h:33
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_notify_goal_done(const rcl_action_server_t *action_server)
Notifies action server that a goal handle reached a terminal state.
action_msgs__srv__CancelGoal_Request rcl_action_cancel_request_t
Definition: types.h:74
rmw_qos_profile_t result_service_qos
Definition: action_server.h:47
struct rcl_action_server_impl_t * impl
Definition: action_server.h:38
RCL_ACTION_PUBLIC const rcl_action_server_options_t * rcl_action_server_get_options(const rcl_action_server_t *action_server)
Return the rcl_action_server_options_t for an action server.
rmw_qos_profile_t status_topic_qos
Definition: action_server.h:49
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_send_cancel_response(const rcl_action_server_t *action_server, rmw_request_id_t *response_header, void *ros_cancel_response)
Send a cancel response using an action server.
RCL_ACTION_PUBLIC rcl_ret_t rcl_action_expire_goals(const rcl_action_server_t *action_server, rcl_action_goal_info_t *expired_goals, size_t expired_goals_capacity, size_t *num_expired)
Expires goals associated with an action server.