include
actionlib
client
simple_client_goal_state.h
Go to the documentation of this file.
1
/*********************************************************************
2
* Software License Agreement (BSD License)
3
*
4
* Copyright (c) 2008, Willow Garage, Inc.
5
* All rights reserved.
6
*
7
* Redistribution and use in source and binary forms, with or without
8
* modification, are permitted provided that the following conditions
9
* are met:
10
*
11
* * Redistributions of source code must retain the above copyright
12
* notice, this list of conditions and the following disclaimer.
13
* * Redistributions in binary form must reproduce the above
14
* copyright notice, this list of conditions and the following
15
* disclaimer in the documentation and/or other materials provided
16
* with the distribution.
17
* * Neither the name of the Willow Garage nor the names of its
18
* contributors may be used to endorse or promote products derived
19
* from this software without specific prior written permission.
20
*
21
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
24
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
25
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
26
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
27
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
28
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
29
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
31
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32
* POSSIBILITY OF SUCH DAMAGE.
33
*********************************************************************/
34
35
#ifndef ACTIONLIB__CLIENT__SIMPLE_CLIENT_GOAL_STATE_H_
36
#define ACTIONLIB__CLIENT__SIMPLE_CLIENT_GOAL_STATE_H_
37
38
#include <string>
39
40
#include "
ros/console.h
"
41
42
namespace
actionlib
43
{
44
45
class
SimpleClientGoalState
46
{
47
public
:
49
enum
StateEnum
50
{
51
PENDING
,
52
ACTIVE
,
53
RECALLED
,
54
REJECTED
,
55
PREEMPTED
,
56
ABORTED
,
57
SUCCEEDED
,
58
LOST
59
};
60
61
StateEnum
state_
;
62
std::string
text_
;
63
64
SimpleClientGoalState
(
const
StateEnum
& state,
65
const
std::string & text = std::string(
""
))
66
:
state_
(state),
text_
(text) {}
67
68
inline
bool
operator==
(
const
SimpleClientGoalState
& rhs)
const
69
{
70
return
state_
== rhs.state_;
71
}
72
73
inline
bool
operator==
(
const
SimpleClientGoalState::StateEnum
& rhs)
const
74
{
75
return
state_
== rhs;
76
}
77
78
inline
bool
operator!=
(
const
SimpleClientGoalState::StateEnum
& rhs)
const
79
{
80
return
!(*
this
== rhs);
81
}
82
83
inline
bool
operator!=
(
const
SimpleClientGoalState
& rhs)
const
84
{
85
return
!(*
this
== rhs);
86
}
87
92
inline
bool
isDone
()
const
93
{
94
switch
(
state_
) {
95
case
RECALLED
:
96
case
REJECTED
:
97
case
PREEMPTED
:
98
case
ABORTED
:
99
case
SUCCEEDED
:
100
case
LOST
:
101
return
true
;
102
default
:
103
return
false
;
104
}
105
}
106
107
std::string
getText
()
const
108
{
109
return
text_
;
110
}
111
113
std::string
toString
()
const
114
{
115
switch
(
state_
) {
116
case
PENDING
:
117
return
"PENDING"
;
118
case
ACTIVE
:
119
return
"ACTIVE"
;
120
case
RECALLED
:
121
return
"RECALLED"
;
122
case
REJECTED
:
123
return
"REJECTED"
;
124
case
PREEMPTED
:
125
return
"PREEMPTED"
;
126
case
ABORTED
:
127
return
"ABORTED"
;
128
case
SUCCEEDED
:
129
return
"SUCCEEDED"
;
130
case
LOST
:
131
return
"LOST"
;
132
default
:
133
ROS_ERROR_NAMED
(
"actionlib"
,
"BUG: Unhandled SimpleGoalState: %u"
,
state_
);
134
break
;
135
}
136
return
"BUG-UNKNOWN"
;
137
}
138
};
139
140
}
// namespace actionlib
141
142
#endif // ACTIONLIB__CLIENT__SIMPLE_CLIENT_GOAL_STATE_H_
actionlib::SimpleClientGoalState::state_
StateEnum state_
Definition:
simple_client_goal_state.h:125
actionlib::SimpleClientGoalState::text_
std::string text_
Definition:
simple_client_goal_state.h:126
actionlib::SimpleClientGoalState::ABORTED
@ ABORTED
Definition:
simple_client_goal_state.h:152
actionlib::SimpleClientGoalState::SimpleClientGoalState
SimpleClientGoalState(const StateEnum &state, const std::string &text=std::string(""))
Definition:
simple_client_goal_state.h:128
actionlib::SimpleClientGoalState::REJECTED
@ REJECTED
Definition:
simple_client_goal_state.h:150
actionlib::SimpleClientGoalState
Definition:
simple_client_goal_state.h:77
actionlib::SimpleClientGoalState::isDone
bool isDone() const
Determine if goal is done executing (ie. reached a terminal state)
Definition:
simple_client_goal_state.h:156
ROS_ERROR_NAMED
#define ROS_ERROR_NAMED(name,...)
actionlib::SimpleClientGoalState::LOST
@ LOST
Definition:
simple_client_goal_state.h:154
actionlib::SimpleClientGoalState::operator!=
bool operator!=(const SimpleClientGoalState::StateEnum &rhs) const
Definition:
simple_client_goal_state.h:142
console.h
actionlib::SimpleClientGoalState::StateEnum
StateEnum
Defines the various states the goal can be in.
Definition:
simple_client_goal_state.h:113
actionlib::SimpleClientGoalState::getText
std::string getText() const
Definition:
simple_client_goal_state.h:171
actionlib::SimpleClientGoalState::PENDING
@ PENDING
Definition:
simple_client_goal_state.h:147
actionlib::SimpleClientGoalState::SUCCEEDED
@ SUCCEEDED
Definition:
simple_client_goal_state.h:153
actionlib::SimpleClientGoalState::RECALLED
@ RECALLED
Definition:
simple_client_goal_state.h:149
actionlib::SimpleClientGoalState::operator==
bool operator==(const SimpleClientGoalState &rhs) const
Definition:
simple_client_goal_state.h:132
actionlib::SimpleClientGoalState::ACTIVE
@ ACTIVE
Definition:
simple_client_goal_state.h:148
actionlib
Definition:
action_definition.h:40
actionlib::SimpleClientGoalState::toString
std::string toString() const
Convert the state to a string. Useful when printing debugging information.
Definition:
simple_client_goal_state.h:177
actionlib::SimpleClientGoalState::PREEMPTED
@ PREEMPTED
Definition:
simple_client_goal_state.h:151
actionlib
Author(s): Eitan Marder-Eppstein, Vijay Pradeep, Mikael Arguedas
autogenerated on Fri May 19 2023 02:36:55