include
actionlib
client
terminal_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__TERMINAL_STATE_H_
36
#define ACTIONLIB__CLIENT__TERMINAL_STATE_H_
37
38
#include <string>
39
#include "
ros/console.h
"
40
41
namespace
actionlib
42
{
43
44
class
TerminalState
45
{
46
public
:
47
enum
StateEnum
48
{
49
RECALLED
,
50
REJECTED
,
51
PREEMPTED
,
52
ABORTED
,
53
SUCCEEDED
,
54
LOST
55
};
56
57
TerminalState
(
const
StateEnum
& state,
const
std::string & text = std::string(
""
))
58
:
state_
(state),
text_
(text) {}
59
60
inline
bool
operator==
(
const
TerminalState
& rhs)
const
61
{
62
return
state_
== rhs.state_;
63
}
64
65
inline
bool
operator==
(
const
TerminalState::StateEnum
& rhs)
const
66
{
67
return
state_
== rhs;
68
}
69
70
inline
bool
operator!=
(
const
TerminalState::StateEnum
& rhs)
const
71
{
72
return
!(*
this
== rhs);
73
}
74
75
inline
bool
operator!=
(
const
TerminalState
& rhs)
const
76
{
77
return
!(*
this
== rhs);
78
}
79
80
std::string
getText
()
const
81
{
82
return
text_
;
83
}
84
85
std::string
toString
()
const
86
{
87
switch
(
state_
) {
88
case
RECALLED
:
89
return
"RECALLED"
;
90
case
REJECTED
:
91
return
"REJECTED"
;
92
case
PREEMPTED
:
93
return
"PREEMPTED"
;
94
case
ABORTED
:
95
return
"ABORTED"
;
96
case
SUCCEEDED
:
97
return
"SUCCEEDED"
;
98
case
LOST
:
99
return
"LOST"
;
100
101
default
:
102
ROS_ERROR_NAMED
(
"actionlib"
,
"BUG: Unhandled TerminalState: %u"
,
state_
);
103
break
;
104
}
105
return
"BUG-UNKNOWN"
;
106
}
107
108
StateEnum
state_
;
109
std::string
text_
;
110
111
private
:
112
TerminalState
();
113
};
114
115
}
// namespace actionlib
116
117
#endif // ACTIONLIB__CLIENT__TERMINAL_STATE_H_
actionlib::TerminalState::operator==
bool operator==(const TerminalState &rhs) const
Definition:
terminal_state.h:124
actionlib::TerminalState::PREEMPTED
@ PREEMPTED
Definition:
terminal_state.h:147
actionlib::TerminalState::getText
std::string getText() const
Definition:
terminal_state.h:144
actionlib::TerminalState::StateEnum
StateEnum
Definition:
terminal_state.h:111
actionlib::TerminalState::operator!=
bool operator!=(const TerminalState::StateEnum &rhs) const
Definition:
terminal_state.h:134
actionlib::TerminalState::LOST
@ LOST
Definition:
terminal_state.h:150
actionlib::TerminalState::REJECTED
@ REJECTED
Definition:
terminal_state.h:146
ROS_ERROR_NAMED
#define ROS_ERROR_NAMED(name,...)
actionlib::TerminalState::ABORTED
@ ABORTED
Definition:
terminal_state.h:148
console.h
actionlib::TerminalState::state_
StateEnum state_
Definition:
terminal_state.h:172
actionlib::TerminalState::TerminalState
TerminalState()
actionlib::TerminalState::SUCCEEDED
@ SUCCEEDED
Definition:
terminal_state.h:149
actionlib
Definition:
action_definition.h:40
actionlib::TerminalState::RECALLED
@ RECALLED
Definition:
terminal_state.h:145
actionlib::TerminalState::toString
std::string toString() const
Definition:
terminal_state.h:149
actionlib::TerminalState::text_
std::string text_
Definition:
terminal_state.h:173
actionlib
Author(s): Eitan Marder-Eppstein, Vijay Pradeep, Mikael Arguedas
autogenerated on Fri May 19 2023 02:36:55