Skip to main content

ComputePathToPoseAction Class

Calls an action server that uses nav2_msgs::action::ComputePathToPose and outputs feedback The ComputePathToPose action (ROS 2 Jazzy) returns a nav_msgs/Path path and builtin_interfaces/Duration planning_time. More...

Declaration

class moveit_pro::behaviors::ComputePathToPoseAction { ... }

Included Headers

#include <compute_path_to_pose_action.hpp>

Base class

classActionClientBehaviorBase<ActionT>

A base class for behaviors which need to send a goal to a ROS action client and wait for a result. If the behavior is halted before the action result is received, the action goal will be canceled. More...

Public Constructors Index

ComputePathToPoseAction (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources)

Constructor for ComputePathToPoseAction behavior. More...

ComputePathToPoseAction (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &shared_resources, std::unique_ptr< ClientInterfaceBase > client_interface)

Overload for constructor which allows providing an alternate action client interface – useful for unit testing, but not a requirement. More...

Public Member Functions Index

tl::expected< std::string, std::string >getActionName () override

Gets the name of the action to use when initializing the action client. More...

Private Member Functions Index

tl::expected< ComputePathToPose::Goal, std::string >createGoal () override

Creates the action goal. More...

tl::expected< bool, std::string >processResult (const std::shared_ptr< ComputePathToPose::Result > result) override

Writes ComputePathToPose::Result values to blackboard. More...

tl::expected< std::chrono::duration< double >, std::string >getResultTimeout () override

Gets the timeout from the blackboard. More...

std::shared_future< tl::expected< bool, std::string > > &getFuture () override

Classes derived from AsyncBehaviorBase must implement getFuture() so that it returns a shared_future class member. More...

Private Member Attributes Index

std::shared_future< tl::expected< bool, std::string > >future_

Classes derived from AsyncBehaviorBase must have this shared_future as a class member. More...

Public Static Functions Index

static BT::PortsListprovidedPorts ()

Custom tree nodes that have input and/or output ports must define them in this static function. More...

static BT::KeyValueVectormetadata ()

Description

Calls an action server that uses nav2_msgs::action::ComputePathToPose and outputs feedback The ComputePathToPose action (ROS 2 Jazzy) returns a nav_msgs/Path path and builtin_interfaces/Duration planning_time.

Data Port NamePort TypeObject Type
action_nameInputstd::string
planner_idInputstd::string
use_startInputbool
startInputgeometry_msgs::msg::PoseStamped
goalInputgeometry_msgs::msg::PoseStamped
timeout_secInputdouble
pathOutputnav_msgs::msg::Path
planning_timeOutputbuiltin_interfaces::msg::Duration

Definition at line 34 of file compute_path_to_pose_action.hpp.

Public Constructors

ComputePathToPoseAction()

moveit_pro::behaviors::ComputePathToPoseAction::ComputePathToPoseAction (const std::string & name, const BT::NodeConfiguration & config, const std::shared_ptr< BehaviorContext > & shared_resources)

Constructor for ComputePathToPoseAction behavior.

Parameters
name

Name of the node. Must match the name used for this node in the behavior tree definition file (the .xml file).

config

Node configuration. Only used here because the BehaviorTree.CPP expects constructor signature with name and config first before custom constructor parameters.

shared_resources

Provides access to common resources such as the node handle and failure logger that are shared between all the behaviors that inherit from moveit_pro::behaviors::SharedResourcesNode.

Declaration at line 46 of file compute_path_to_pose_action.hpp, definition at line 41 of file compute_path_to_pose_action.cpp.

ComputePathToPoseAction()

moveit_pro::behaviors::ComputePathToPoseAction::ComputePathToPoseAction (const std::string & name, const BT::NodeConfiguration & config, const std::shared_ptr< BehaviorContext > & shared_resources, std::unique_ptr< ClientInterfaceBase > client_interface)

Overload for constructor which allows providing an alternate action client interface – useful for unit testing, but not a requirement.

Declaration at line 53 of file compute_path_to_pose_action.hpp, definition at line 47 of file compute_path_to_pose_action.cpp.

Public Member Functions

getActionName()

tl::expected< std::string, std::string > moveit_pro::behaviors::ComputePathToPoseAction::getActionName ()
virtual

Gets the name of the action to use when initializing the action client.

Returns

The name of the action for the ComputePathToPoseAction action client.

Declaration at line 70 of file compute_path_to_pose_action.hpp, definition at line 83 of file compute_path_to_pose_action.cpp.

Private Member Functions

createGoal()

tl::expected< ComputePathToPose::Goal, std::string > moveit_pro::behaviors::ComputePathToPoseAction::createGoal ()
virtual

Creates the action goal.

Returns

The action goal message if successful, or an error message otherwise.

Declaration at line 77 of file compute_path_to_pose_action.hpp, definition at line 94 of file compute_path_to_pose_action.cpp.

getFuture()

std::shared_future< tl::expected< bool, std::string > > & moveit_pro::behaviors::ComputePathToPoseAction::getFuture ()
inline virtual

Classes derived from AsyncBehaviorBase must implement getFuture() so that it returns a shared_future class member.

Definition at line 94 of file compute_path_to_pose_action.hpp.

getResultTimeout()

tl::expected< std::chrono::duration< double >, std::string > moveit_pro::behaviors::ComputePathToPoseAction::getResultTimeout ()
virtual

Gets the timeout from the blackboard.

Returns

The timeout as a chrono duration if successful, or an error message otherwise.

Declaration at line 90 of file compute_path_to_pose_action.hpp, definition at line 155 of file compute_path_to_pose_action.cpp.

processResult()

tl::expected< bool, std::string > moveit_pro::behaviors::ComputePathToPoseAction::processResult (const std::shared_ptr< ComputePathToPose::Result > result)

Writes ComputePathToPose::Result values to blackboard.

Parameters
result

Action result message to process.

Returns

True if successful, or an error message otherwise.

Declaration at line 84 of file compute_path_to_pose_action.hpp, definition at line 144 of file compute_path_to_pose_action.cpp.

Private Member Attributes

future_

std::shared_future<tl::expected<bool, std::string> > moveit_pro::behaviors::ComputePathToPoseAction::future_

Classes derived from AsyncBehaviorBase must have this shared_future as a class member.

Definition at line 100 of file compute_path_to_pose_action.hpp.

Public Static Functions

metadata()

BT::KeyValueVector moveit_pro::behaviors::ComputePathToPoseAction::metadata ()
static

Declaration at line 64 of file compute_path_to_pose_action.hpp, definition at line 78 of file compute_path_to_pose_action.cpp.

providedPorts()

BT::PortsList moveit_pro::behaviors::ComputePathToPoseAction::providedPorts ()
static

Custom tree nodes that have input and/or output ports must define them in this static function.

This function must be static. It is a requirement set by the BehaviorTree.CPP library.

Returns

List of ports with the names and port info. The return value is for the internal use of the behavior tree.

Declaration at line 62 of file compute_path_to_pose_action.hpp, definition at line 54 of file compute_path_to_pose_action.cpp.


The documentation for this class was generated from the following files:


Generated via doxygen2docusaurus 2.2.2 by Doxygen 1.9.8.