Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends
actionlib::ClientGoalHandle< ActionSpec > Class Template Reference

Client side handle to monitor goal progress. More...

#include <client_helpers.h>

List of all members.

Public Member Functions

void cancel ()
 Sends a cancel message for this specific goal to the ActionServer.
 ClientGoalHandle ()
 Create an empty goal handle.
CommState getCommState () const
 Get the state of this goal's communication state machine from interaction with the server.
ResultConstPtr getResult () const
 Get result associated with this goal.
TerminalState getTerminalState () const
 Get the terminal state information for this goal.
bool isExpired () const
 Checks if this goal handle is tracking a goal.
bool operator!= (const ClientGoalHandle< ActionSpec > &rhs) const
 !(operator==())
bool operator== (const ClientGoalHandle< ActionSpec > &rhs) const
 Check if two goal handles point to the same goal.
void resend ()
 Resends this goal [with the same GoalID] to the ActionServer.
void reset ()
 Stops goal handle from tracking a goal.
 ~ClientGoalHandle ()

Private Types

typedef GoalManager< ActionSpec > GoalManagerT
typedef ManagedList
< boost::shared_ptr
< CommStateMachine< ActionSpec > > > 
ManagedListT

Private Member Functions

 ACTION_DEFINITION (ActionSpec)
 ClientGoalHandle (GoalManagerT *gm, typename ManagedListT::Handle handle, const boost::shared_ptr< DestructionGuard > &guard)

Private Attributes

bool active_
GoalManagerTgm_
boost::shared_ptr
< DestructionGuard
guard_
ManagedListT::Handle list_handle_

Friends

class GoalManager< ActionSpec >

Detailed Description

template<class ActionSpec>
class actionlib::ClientGoalHandle< ActionSpec >

Client side handle to monitor goal progress.

A ClientGoalHandle is a reference counted object that is used to manipulate and monitor the progress of an already dispatched goal. Once all the goal handles go out of scope (or are reset), an ActionClient stops maintaining state for that goal.

Definition at line 122 of file client_helpers.h.


Member Typedef Documentation

template<class ActionSpec>
typedef GoalManager<ActionSpec> actionlib::ClientGoalHandle< ActionSpec >::GoalManagerT [private]

Definition at line 207 of file client_helpers.h.

template<class ActionSpec>
typedef ManagedList<boost::shared_ptr<CommStateMachine<ActionSpec> > > actionlib::ClientGoalHandle< ActionSpec >::ManagedListT [private]

Definition at line 208 of file client_helpers.h.


Constructor & Destructor Documentation

template<class ActionSpec >
actionlib::ClientGoalHandle< ActionSpec >::ClientGoalHandle ( )

Create an empty goal handle.

Constructs a goal handle that doesn't track any goal. Calling any method on an empty goal handle other than operator= will trigger an assertion.

Definition at line 45 of file client_goal_handle_imp.h.

template<class ActionSpec >
actionlib::ClientGoalHandle< ActionSpec >::~ClientGoalHandle ( )

Definition at line 52 of file client_goal_handle_imp.h.

template<class ActionSpec >
actionlib::ClientGoalHandle< ActionSpec >::ClientGoalHandle ( GoalManagerT gm,
typename ManagedListT::Handle  handle,
const boost::shared_ptr< DestructionGuard > &  guard 
) [private]

Definition at line 58 of file client_goal_handle_imp.h.


Member Function Documentation

template<class ActionSpec>
actionlib::ClientGoalHandle< ActionSpec >::ACTION_DEFINITION ( ActionSpec  ) [private]
template<class ActionSpec >
void actionlib::ClientGoalHandle< ActionSpec >::cancel ( )

Sends a cancel message for this specific goal to the ActionServer.

Also transitions the Communication State Machine to WAITING_FOR_CANCEL_ACK

Definition at line 240 of file client_goal_handle_imp.h.

template<class ActionSpec >
CommState actionlib::ClientGoalHandle< ActionSpec >::getCommState ( ) const

Get the state of this goal's communication state machine from interaction with the server.

Possible States are: WAITING_FOR_GOAL_ACK, PENDING, ACTIVE, WAITING_FOR_RESULT, WAITING_FOR_CANCEL_ACK, RECALLING, PREEMPTING, DONE

Returns:
The current goal's communication state with the server

Definition at line 94 of file client_goal_handle_imp.h.

template<class ActionSpec >
ClientGoalHandle< ActionSpec >::ResultConstPtr actionlib::ClientGoalHandle< ActionSpec >::getResult ( ) const

Get result associated with this goal.

Returns:
NULL if no result received. Otherwise returns shared_ptr to result.

Definition at line 180 of file client_goal_handle_imp.h.

template<class ActionSpec >
TerminalState actionlib::ClientGoalHandle< ActionSpec >::getTerminalState ( ) const

Get the terminal state information for this goal.

Possible States Are: RECALLED, REJECTED, PREEMPTED, ABORTED, SUCCEEDED, LOST This call only makes sense if CommState==DONE. This will send ROS_WARNs if we're not in DONE

Returns:
The terminal state

Definition at line 120 of file client_goal_handle_imp.h.

template<class ActionSpec >
bool actionlib::ClientGoalHandle< ActionSpec >::isExpired ( ) const [inline]

Checks if this goal handle is tracking a goal.

Has pretty much the same semantics as boost::shared_ptr::expired()

Returns:
True if this goal handle is not tracking a goal

Definition at line 87 of file client_goal_handle_imp.h.

template<class ActionSpec>
bool actionlib::ClientGoalHandle< ActionSpec >::operator!= ( const ClientGoalHandle< ActionSpec > &  rhs) const

!(operator==())

Definition at line 320 of file client_goal_handle_imp.h.

template<class ActionSpec>
bool actionlib::ClientGoalHandle< ActionSpec >::operator== ( const ClientGoalHandle< ActionSpec > &  rhs) const

Check if two goal handles point to the same goal.

Returns:
TRUE if both point to the same goal. Also returns TRUE if both handles are inactive.

Definition at line 297 of file client_goal_handle_imp.h.

template<class ActionSpec >
void actionlib::ClientGoalHandle< ActionSpec >::resend ( )

Resends this goal [with the same GoalID] to the ActionServer.

Useful if the user thinks that the goal may have gotten lost in transit

Definition at line 205 of file client_goal_handle_imp.h.

template<class ActionSpec >
void actionlib::ClientGoalHandle< ActionSpec >::reset ( )

Stops goal handle from tracking a goal.

Useful if you want to stop tracking the progress of a goal, but it is inconvenient to force the goal handle to go out of scope. Has pretty much the same semantics as boost::shared_ptr::reset()

Definition at line 69 of file client_goal_handle_imp.h.


Friends And Related Function Documentation

template<class ActionSpec>
friend class GoalManager< ActionSpec > [friend]

Definition at line 204 of file client_helpers.h.


Member Data Documentation

template<class ActionSpec>
bool actionlib::ClientGoalHandle< ActionSpec >::active_ [private]

Definition at line 214 of file client_helpers.h.

template<class ActionSpec>
GoalManagerT* actionlib::ClientGoalHandle< ActionSpec >::gm_ [private]

Definition at line 213 of file client_helpers.h.

template<class ActionSpec>
boost::shared_ptr<DestructionGuard> actionlib::ClientGoalHandle< ActionSpec >::guard_ [private]

Definition at line 216 of file client_helpers.h.

template<class ActionSpec>
ManagedListT::Handle actionlib::ClientGoalHandle< ActionSpec >::list_handle_ [private]

Definition at line 217 of file client_helpers.h.


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


actionlib
Author(s): Eitan Marder-Eppstein, Vijay Pradeep
autogenerated on Tue May 22 2018 02:25:39