Skip to main content

AdjustPoseWithIMarker Class

Requests a user to manually adjust a collection of poses using interactive markers in the UI. More...

Declaration​

class moveit_pro::behaviors::AdjustPoseWithIMarker { ... }

Included Headers​

#include <adjust_pose_with_imarker.hpp>

Base class​

classAsyncBehaviorBase

A base class for behaviors which need to asynchronously run a function that might take a long time to complete. More...

Public Constructors Index​

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

Construct a new AdjustPoseWithIMarker object. More...

Private Member Functions Index​

tl::expected< AdjustPose::Request, std::string >createRequest () const

Compose a AdjustPose::Request message from the input port values specified. More...

tl::expected< bool, std::string >processResponse (const AdjustPose::Response &response)

Evaluate the service response message to determine if the service succeeded or failed. More...

tl::expected< bool, std::string >doWork () override

Publish the UI prompt request and wait for the correlated response. More...

tl::expected< void, std::string >doHalt () override

Cancel the in-flight UI prompt request when the Behavior is halted. 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...

std::shared_ptr< utils::UIRequestResponseClient >request_client_

Public Static Functions Index​

static BT::PortsListprovidedPorts ()

Returns list of ports for this Behavior. More...

static BT::KeyValueVectormetadata ()

Returns metadata for this Behavior. More...

Description​

Requests a user to manually adjust a collection of poses using interactive markers in the UI.

The list of prompts must be the same length in size as the initial poses requested from the user. The output is a list of adjusted stamped poses.

Data Port NamePort TypeObject Type
promptsInputstd::vector<std::string>
initial_posesInputstd::vector<geometry_msgs::msg::PoseStamped>
adjusted_posesOutputstd::vector<geometry_msgs::msg::PoseStamped>

Definition at line 31 of file adjust_pose_with_imarker.hpp.

Public Constructors​

AdjustPoseWithIMarker()​

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

Construct a new AdjustPoseWithIMarker object.

Parameters
name

See SharedResourcesNode

config

See SharedResourcesNode

shared_resources

See SharedResourcesNode

Declaration at line 40 of file adjust_pose_with_imarker.hpp, definition at line 70 of file adjust_pose_with_imarker.cpp.

Private Member Functions​

createRequest()​

tl::expected< AdjustPose::Request, std::string > moveit_pro::behaviors::AdjustPoseWithIMarker::createRequest ()

Compose a AdjustPose::Request message from the input port values specified.

Returns

Returns the service request message if successful. If not successful, returns an error message.

Declaration at line 60 of file adjust_pose_with_imarker.hpp, definition at line 97 of file adjust_pose_with_imarker.cpp.

doHalt()​

tl::expected< void, std::string > moveit_pro::behaviors::AdjustPoseWithIMarker::doHalt ()
virtual

Cancel the in-flight UI prompt request when the Behavior is halted.

Returns

An empty success result.

Declaration at line 78 of file adjust_pose_with_imarker.hpp, definition at line 169 of file adjust_pose_with_imarker.cpp.

doWork()​

tl::expected< bool, std::string > moveit_pro::behaviors::AdjustPoseWithIMarker::doWork ()
virtual

Publish the UI prompt request and wait for the correlated response.

Returns

If the prompt flow succeeded, returns true. If it failed, returns an error message.

Declaration at line 72 of file adjust_pose_with_imarker.hpp, definition at line 149 of file adjust_pose_with_imarker.cpp.

getFuture()​

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

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

Definition at line 81 of file adjust_pose_with_imarker.hpp.

processResponse()​

tl::expected< bool, std::string > moveit_pro::behaviors::AdjustPoseWithIMarker::processResponse (const AdjustPose::Response & response)

Evaluate the service response message to determine if the service succeeded or failed.

Returns

If the service succeeded, returns true. If the service did not succeed, returns an error message.

Declaration at line 66 of file adjust_pose_with_imarker.hpp, definition at line 138 of file adjust_pose_with_imarker.cpp.

Private Member Attributes​

future_​

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

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

Definition at line 87 of file adjust_pose_with_imarker.hpp.

request_client_​

std::shared_ptr<utils::UIRequestResponseClient> moveit_pro::behaviors::AdjustPoseWithIMarker::request_client_

Definition at line 88 of file adjust_pose_with_imarker.hpp.

Public Static Functions​

metadata()​

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

Returns metadata for this Behavior.

Returns

BT::KeyValueVector The Behavior metadata.

Declaration at line 53 of file adjust_pose_with_imarker.hpp, definition at line 92 of file adjust_pose_with_imarker.cpp.

providedPorts()​

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

Returns list of ports for this Behavior.

Returns

BT::PortsList The list of I/O Ports

Declaration at line 47 of file adjust_pose_with_imarker.hpp, definition at line 78 of file adjust_pose_with_imarker.cpp.


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


Generated via doxygen2docusaurus 2.2.2 by Doxygen 1.9.8.