|
rclcpp_action
master
C++ ROS Action Client Library
|
Class to interact with goals on a server. More...
#include <server_goal_handle.hpp>


Public Member Functions | |
| void | publish_feedback (std::shared_ptr< typename ActionT::Feedback > feedback_msg) |
| Send an update about the progress of a goal. More... | |
| void | abort (typename ActionT::Result::SharedPtr result_msg) |
| Indicate that a goal could not be reached and has been aborted. More... | |
| void | succeed (typename ActionT::Result::SharedPtr result_msg) |
| Indicate that a goal has succeeded. More... | |
| void | canceled (typename ActionT::Result::SharedPtr result_msg) |
| Indicate that a goal has been canceled. More... | |
| void | execute () |
| Indicate that the server is starting to execute a goal. More... | |
| const std::shared_ptr< const typename ActionT::Goal > | get_goal () const |
| Get the user provided message describing the goal. More... | |
| const GoalUUID & | get_goal_id () const |
| Get the unique identifier of the goal. More... | |
| virtual | ~ServerGoalHandle () |
Public Member Functions inherited from rclcpp_action::ServerGoalHandleBase | |
| RCLCPP_ACTION_PUBLIC bool | is_canceling () const |
| RCLCPP_ACTION_PUBLIC bool | is_active () const |
| RCLCPP_ACTION_PUBLIC bool | is_executing () const |
| virtual RCLCPP_ACTION_PUBLIC | ~ServerGoalHandleBase () |
Protected Member Functions | |
| ServerGoalHandle (std::shared_ptr< rcl_action_goal_handle_t > rcl_handle, GoalUUID uuid, std::shared_ptr< const typename ActionT::Goal > goal, std::function< void(const GoalUUID &, std::shared_ptr< void >)> on_terminal_state, std::function< void(const GoalUUID &)> on_executing, std::function< void(std::shared_ptr< typename ActionT::Impl::FeedbackMessage >)> publish_feedback) | |
Protected Member Functions inherited from rclcpp_action::ServerGoalHandleBase | |
| RCLCPP_ACTION_PUBLIC | ServerGoalHandleBase (std::shared_ptr< rcl_action_goal_handle_t > rcl_handle) |
| RCLCPP_ACTION_PUBLIC void | _abort () |
| RCLCPP_ACTION_PUBLIC void | _succeed () |
| RCLCPP_ACTION_PUBLIC void | _cancel_goal () |
| RCLCPP_ACTION_PUBLIC void | _canceled () |
| RCLCPP_ACTION_PUBLIC void | _execute () |
| RCLCPP_ACTION_PUBLIC bool | try_canceling () noexcept |
Protected Attributes | |
| const std::shared_ptr< const typename ActionT::Goal > | goal_ |
| The user provided message describing the goal. More... | |
| const GoalUUID | uuid_ |
| A unique id for the goal request. More... | |
| friend | Server< ActionT > |
| std::function< void(const GoalUUID &, std::shared_ptr< void >)> | on_terminal_state_ |
| std::function< void(const GoalUUID &)> | on_executing_ |
| std::function< void(std::shared_ptr< typename ActionT::Impl::FeedbackMessage >)> | publish_feedback_ |
Class to interact with goals on a server.
Use this class to check the status of a goal as well as set the result.
This class is not meant to be created by a user, instead it is created when a goal has been accepted. A Server will create an instance and give it to the user in their handle_accepted callback.
Internally, this class is responsible for coverting between the C++ action type and generic types for rclcpp_action::ServerGoalHandleBase.
|
inlinevirtual |
|
inlineprotected |
|
inline |
Send an update about the progress of a goal.
This must only be called when the goal is executing. If execution of a goal is deferred then ServerGoalHandle::set_executing() must be called first.
| std::runtime_error | If the goal is in any state besides executing. |
| [in] | feedback_msg | the message to publish to clients. |
|
inline |
Indicate that a goal could not be reached and has been aborted.
Only call this if the goal was executing but cannot be completed. This is a terminal state, no more methods should be called on a goal handle after this is called.
| rclcpp::exceptions::RCLError | If the goal is in any state besides executing. |
| [in] | result_msg | the final result to send to clients. |
|
inline |
Indicate that a goal has succeeded.
Only call this if the goal is executing and has reached the desired final state. This is a terminal state, no more methods should be called on a goal handle after this is called.
| rclcpp::exceptions::RCLError | If the goal is in any state besides executing. |
| [in] | result_msg | the final result to send to clients. |
|
inline |
Indicate that a goal has been canceled.
Only call this if the goal is executing or pending, but has been canceled. This is a terminal state, no more methods should be called on a goal handle after this is called.
| rclcpp::exceptions::RCLError | If the goal is in any state besides executing. |
| [in] | result_msg | the final result to send to clients. |
|
inline |
Indicate that the server is starting to execute a goal.
Only call this if the goal is pending.
| rclcpp::exceptions::RCLError | If the goal is in any state besides executing. |
|
inline |
Get the user provided message describing the goal.
|
inline |
Get the unique identifier of the goal.
|
protected |
The user provided message describing the goal.
|
protected |
A unique id for the goal request.
|
protected |
|
protected |
|
protected |
|
protected |
1.8.17