YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches
Action.cpp
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3 * SPDX-License-Identifier: BSD-3-Clause
4 */
5
7
9
10#include <yarp/os/LogStream.h>
11
12#include <string>
13
14namespace {
15YARP_LOG_COMPONENT(YRI_ACTION, "yarp.yri.Action")
16}
17
33
35{
36 dbg << "(\"" << ActionPhaseToString(t.phase()) << ":" << ActionTypeToString(t.type()) << ":" << t.level() << "\"";
37 if (!t.params().empty()) {
38 dbg << ", params = [";
39 dbg << t.params();
40 dbg << "]";
41 }
42 dbg << ")";
43 return dbg;
44}
45
47 mPriv(new Private(this))
48{
49}
50
51yarp::robotinterface::Action::Action(const std::string& phase, const std::string& type, unsigned int level) :
52 mPriv(new Private(this))
53{
56 mPriv->level = level;
57}
58
60 mPriv(new Private(this))
61{
62 mPriv->phase = phase;
63 mPriv->type = type;
64 mPriv->level = level;
65}
66
68 mPriv(new Private(this))
69{
70 mPriv->phase = other.mPriv->phase;
71 mPriv->type = other.mPriv->type;
72 mPriv->level = other.mPriv->level;
73 mPriv->params = other.mPriv->params;
74}
75
77{
78 if (&other != this) {
79 mPriv->phase = other.mPriv->phase;
80 mPriv->type = other.mPriv->type;
81 mPriv->level = other.mPriv->level;
82
83 mPriv->params.clear();
84 mPriv->params = other.mPriv->params;
85 }
86
87 return *this;
88}
89
91{
92 delete mPriv;
93}
94
99
104
106{
107 return mPriv->level;
108}
109
114
119
124
126{
127 return mPriv->level;
128}
129
131{
132 return mPriv->params;
133}
134
135bool yarp::robotinterface::Action::hasParam(const std::string& name) const
136{
137 return yarp::robotinterface::hasParam(mPriv->params, name);
138}
139
140std::string yarp::robotinterface::Action::findParam(const std::string& name) const
141{
142 return yarp::robotinterface::findParam(mPriv->params, name);
143}
yarp::os::LogStream operator<<(yarp::os::LogStream dbg, const yarp::robotinterface::Action &t)
Definition Action.cpp:34
Action & operator=(const Action &other)
Definition Action.cpp:76
bool hasParam(const std::string &name) const
Definition Action.cpp:135
unsigned int & level()
Definition Action.cpp:105
ActionPhase & phase()
Definition Action.cpp:95
std::string findParam(const std::string &name) const
Definition Action.cpp:140
#define YARP_LOG_COMPONENT(name,...)
bool hasParam(const robotinterface::ParamList &list, const std::string &name)
Definition Types.cpp:20
std::vector< robotinterface::Param > ParamList
Definition Types.h:30
robotinterface::ActionPhase StringToActionPhase(const std::string &phase)
Definition Types.cpp:85
robotinterface::ActionType StringToActionType(const std::string &type)
Definition Types.cpp:130
std::string findParam(const robotinterface::ParamList &list, const std::string &name)
Definition Types.cpp:30