nros C++ API
Lightweight ROS 2 client for embedded real-time systems (C++ headers)
Loading...
Searching...
No Matches
rclcpp_action::ClientGoalHandle< A > Class Template Reference

#include <client.hpp>

Public Types

using ConstSharedPtr = detail::Refused<ClientGoalHandle>
using Feedback = typename A::Feedback
using Result = typename A::Result
using SharedPtr = detail::Refused<ClientGoalHandle>
using WrappedResult = detail::Refused<ClientGoalHandle>

Public Member Functions

 ClientGoalHandle (const ClientGoalHandle &)=delete
 ClientGoalHandle (const GoalUUID &id)
const GoalUUID & get_goal_id () const
 The goal's id.
int8_t get_status () const
 The last status this client saw for the goal (action_msgs numbers).
bool is_feedback_aware () const
 A feedback callback was given for this goal.
bool is_result_aware () const
 A result callback was given for this goal (its result was requested).
ClientGoalHandle & operator= (const ClientGoalHandle &)=delete

Friends

class Client< A >

Detailed Description

template<typename A>
class rclcpp_action::ClientGoalHandle< A >

rclcpp_action::ClientGoalHandle<A> — issue 2015, upstream's client-side per-goal handle.

On a HOSTED build (NROS_CPP_STD) it is what async_send_goal's SendGoalOptions callbacks receive, as upstream's SharedPtr (std::shared_ptr): the goal id and status, and — nested — the WrappedResult the result callback gets. It owns no futures and no subscription (the client does; the handle is a heap token over the goal id). A freestanding build has no allocator for it: SharedPtr and WrappedResult are refused there, and the client's goal-id-keyed callbacks (set_callbacks) are the form.

Member Typedef Documentation

◆ ConstSharedPtr

template<typename A>
using rclcpp_action::ClientGoalHandle< A >::ConstSharedPtr = detail::Refused<ClientGoalHandle>

◆ Feedback

template<typename A>
using rclcpp_action::ClientGoalHandle< A >::Feedback = typename A::Feedback

◆ Result

template<typename A>
using rclcpp_action::ClientGoalHandle< A >::Result = typename A::Result

◆ SharedPtr

template<typename A>
using rclcpp_action::ClientGoalHandle< A >::SharedPtr = detail::Refused<ClientGoalHandle>

◆ WrappedResult

template<typename A>
using rclcpp_action::ClientGoalHandle< A >::WrappedResult = detail::Refused<ClientGoalHandle>

Constructor & Destructor Documentation

◆ ClientGoalHandle() [1/2]

template<typename A>
rclcpp_action::ClientGoalHandle< A >::ClientGoalHandle ( const GoalUUID & id)
inlineexplicit

◆ ClientGoalHandle() [2/2]

template<typename A>
rclcpp_action::ClientGoalHandle< A >::ClientGoalHandle ( const ClientGoalHandle< A > & )
delete

Member Function Documentation

◆ get_goal_id()

template<typename A>
const GoalUUID & rclcpp_action::ClientGoalHandle< A >::get_goal_id ( ) const
inline

The goal's id.

◆ get_status()

template<typename A>
int8_t rclcpp_action::ClientGoalHandle< A >::get_status ( ) const
inline

The last status this client saw for the goal (action_msgs numbers).

◆ is_feedback_aware()

template<typename A>
bool rclcpp_action::ClientGoalHandle< A >::is_feedback_aware ( ) const
inline

A feedback callback was given for this goal.

◆ is_result_aware()

template<typename A>
bool rclcpp_action::ClientGoalHandle< A >::is_result_aware ( ) const
inline

A result callback was given for this goal (its result was requested).

◆ operator=()

template<typename A>
ClientGoalHandle & rclcpp_action::ClientGoalHandle< A >::operator= ( const ClientGoalHandle< A > & )
delete

◆ Client< A >

template<typename A>
friend class Client< A >
friend

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