SkillStatusUpdate.cpp
Go to the documentation of this file.
1 #include "SkillStatusUpdate.h"
2 
3 namespace armarx
4 {
5  namespace skills
6  {
8  {
9  switch (d)
10  {
12  return SkillStatus::Running;
14  return SkillStatus::Failed;
18  return SkillStatus::Aborted;
19  }
20  throw error::SkillException(__PRETTY_FUNCTION__, "Should not happen!");
21  }
22 
24  {
25  switch (d)
26  {
28  return SkillStatus::Failed;
32  return SkillStatus::Aborted;
33  }
34  throw error::SkillException(__PRETTY_FUNCTION__, "Should not happen!");
35  }
36 
37  void toIce(provider::dto::Execution::Status& ret, const SkillStatus& status)
38  {
39  switch(status)
40  {
41  case SkillStatus::Idle:
42  ret = provider::dto::Execution::Status::Idle;
43  return;
45  ret = provider::dto::Execution::Status::Scheduled;
46  return;
49  return;
51  ret = provider::dto::Execution::Status::Failed;
52  return;
54  ret = provider::dto::Execution::Status::Succeeded;
55  return;
57  ret = provider::dto::Execution::Status::Aborted;
58  return;
59  }
60  throw error::SkillException(__PRETTY_FUNCTION__, "Should not happen!");
61  }
62 
63  void toIce(provider::dto::Execution::Status& ret, const ActiveOrTerminatedSkillStatus& status)
64  {
65  switch(status)
66  {
69  return;
71  ret = provider::dto::Execution::Status::Failed;
72  return;
74  ret = provider::dto::Execution::Status::Succeeded;
75  return;
77  ret = provider::dto::Execution::Status::Aborted;
78  return;
79  }
80  throw error::SkillException(__PRETTY_FUNCTION__, "Should not happen!");
81  }
82 
83  void toIce(provider::dto::Execution::Status& ret, const TerminatedSkillStatus& status)
84  {
85  switch(status)
86  {
88  ret = provider::dto::Execution::Status::Failed;
89  return;
91  ret = provider::dto::Execution::Status::Succeeded;
92  return;
94  ret = provider::dto::Execution::Status::Aborted;
95  return;
96  }
97  throw error::SkillException(__PRETTY_FUNCTION__, "Should not happen!");
98  }
99 
100  void fromIce(const provider::dto::Execution::Status& status, TerminatedSkillStatus& ret)
101  {
102  switch(status)
103  {
104  case provider::dto::Execution::Status::Idle:
105  [[fallthrough]];
106  case provider::dto::Execution::Status::Scheduled:
107  [[fallthrough]];
109  break;
110  case provider::dto::Execution::Status::Failed:
112  return;
113  case provider::dto::Execution::Status::Succeeded:
115  return;
116  case provider::dto::Execution::Status::Aborted:
118  return;
119  }
120  throw error::SkillException(__PRETTY_FUNCTION__, "You entered an invalid execution status type to convert to a terminating status.");
121  }
122 
123  void fromIce(const provider::dto::Execution::Status& status, ActiveOrTerminatedSkillStatus& ret)
124  {
125  switch(status)
126  {
127  case provider::dto::Execution::Status::Idle:
128  [[fallthrough]];
129  case provider::dto::Execution::Status::Scheduled:
130  break;
133  return;
134  case provider::dto::Execution::Status::Failed:
136  return;
137  case provider::dto::Execution::Status::Succeeded:
139  return;
140  case provider::dto::Execution::Status::Aborted:
142  return;
143  }
144  throw error::SkillException(__PRETTY_FUNCTION__, "You entered an invalid execution status type to convert to a terminating status.");
145  }
146 
147  void fromIce(const provider::dto::Execution::Status& status, SkillStatus& ret)
148  {
149  switch(status)
150  {
151  case provider::dto::Execution::Status::Idle:
153  return;
154  case provider::dto::Execution::Status::Scheduled:
156  return;
159  return;
160  case provider::dto::Execution::Status::Failed:
162  return;
163  case provider::dto::Execution::Status::Succeeded:
165  return;
166  case provider::dto::Execution::Status::Aborted:
168  return;
169  }
170  throw error::SkillException(__PRETTY_FUNCTION__, "Should not happen!");
171  }
172 
173 
174 
175 
176  provider::dto::SkillStatusUpdate TerminatedSkillStatusUpdate::toIce() const
177  {
178  provider::dto::SkillStatusUpdate ret;
179  ret.header.skillId = skillId.toIce();
180  ret.header.executorName = executorName;
182  skills::toIce(ret.header.status, status);
183  ret.header.usedCallbackInterface = usedParameterization.usedCallbackInterface;
184  ret.header.usedParams = usedParameterization.toIce();
185  return ret;
186  }
187 
188  provider::dto::SkillStatusUpdate SkillStatusUpdate::toIce() const
189  {
190  provider::dto::SkillStatusUpdate ret;
191  ret.header.skillId = skillId.toIce();
192  ret.header.executorName = executorName;
194  skills::toIce(ret.header.status, status);
195  ret.header.usedCallbackInterface = usedParameterization.usedCallbackInterface;
196  ret.header.usedParams = usedParameterization.toIce();
197  return ret;
198  }
199 
200  provider::dto::SkillStatusUpdate ActiveOrTerminatedSkillStatusUpdate::toIce() const
201  {
202  provider::dto::SkillStatusUpdate ret;
203  ret.header.skillId = skillId.toIce();
204  ret.header.executorName = executorName;
206  skills::toIce(ret.header.status, status);
207  ret.header.usedCallbackInterface = usedParameterization.usedCallbackInterface;
208  ret.header.usedParams = usedParameterization.toIce();
209  return ret;
210  }
211 
213  {
215  ret.skillId = {update.header.skillId.providerName, update.header.skillId.skillName};
216  ret.executorName = update.header.executorName;
217  skills::fromIce(update.header.status, ret.status);
218  ret.usedParameterization = {aron::data::Dict::FromAronDictDTO(update.header.usedParams), update.header.usedCallbackInterface};
220  return ret;
221  }
222 
223  SkillStatusUpdate SkillStatusUpdate::FromIce(const provider::dto::SkillStatusUpdate& update)
224  {
226  ret.skillId = {update.header.skillId.providerName, update.header.skillId.skillName};
227  ret.executorName = update.header.executorName;
228  skills::fromIce(update.header.status, ret.status);
229  ret.usedParameterization = {aron::data::Dict::FromAronDictDTO(update.header.usedParams), update.header.usedCallbackInterface};
231  return ret;
232  }
233 
235  {
237  ret.skillId = {update.header.skillId.providerName, update.header.skillId.skillName};
238  ret.executorName = update.header.executorName;
239  skills::fromIce(update.header.status, ret.status);
240  ret.usedParameterization = {aron::data::Dict::FromAronDictDTO(update.header.usedParams), update.header.usedCallbackInterface};
242  return ret;
243  }
244  }
245 }
armarx::skills::SkillID::toIce
provider::dto::SkillID toIce() const
Definition: SkillID.cpp:30
armarx::skills::SkillStatus::Idle
@ Idle
armarx::skills::toIce
void toIce(provider::dto::Execution::Status &ret, const SkillStatus &status)
Definition: SkillStatusUpdate.cpp:37
armarx::skills::TerminatedSkillStatus
TerminatedSkillStatus
Definition: SkillStatusUpdate.h:34
armarx::skills::SkillStatusUpdateBase::data
aron::data::DictPtr data
Definition: SkillStatusUpdate.h:60
armarx::skills::SkillParameterization::toIce
aron::data::dto::DictPtr toIce() const
Definition: SkillParameterization.cpp:7
armarx::aron::ret
ReaderT::InputType T & ret
Definition: rw.h:21
armarx::skills::TerminatedSkillStatus::Succeeded
@ Succeeded
skills
This file is part of ArmarX.
armarx::skills::TerminatedSkillStatus::Aborted
@ Aborted
SkillStatusUpdate.h
armarx::skills::SkillStatus::Aborted
@ Aborted
armarx::skills::ActiveOrTerminatedSkillStatus::Succeeded
@ Succeeded
armarx::skills::ActiveOrTerminatedSkillStatus::Failed
@ Failed
KITProsthesis::ProsthesisState::Running
@ Running
Definition: KITProstheticHandInterface.ice:43
armarx::skills::SkillParameterization::usedCallbackInterface
callback::dti::SkillProviderCallbackInterfacePrx usedCallbackInterface
Definition: SkillParameterization.h:16
armarx::skills::SkillStatus::Scheduled
@ Scheduled
armarx::skills::SkillStatusUpdateBase::usedParameterization
SkillParameterization usedParameterization
Definition: SkillStatusUpdate.h:57
armarx::aron::data::Dict::FromAronDictDTO
static PointerType FromAronDictDTO(const data::dto::DictPtr &aron)
Definition: Dict.cpp:129
armarx::skills::SkillStatusUpdateBase::skillId
SkillID skillId
Definition: SkillStatusUpdate.h:55
armarx::skills::ActiveOrTerminatedSkillStatus
ActiveOrTerminatedSkillStatus
Definition: SkillStatusUpdate.h:26
armarx::skills::ActiveOrTerminatedSkillStatusUpdate::toIce
provider::dto::SkillStatusUpdate toIce() const
Definition: SkillStatusUpdate.cpp:200
armarx::status
status
Definition: FiniteStateMachine.h:259
armarx::skills::SkillStatusUpdate
Definition: SkillStatusUpdate.h:82
armarx::skills::ActiveOrTerminatedSkillStatusUpdate::FromIce
static ActiveOrTerminatedSkillStatusUpdate FromIce(const provider::dto::SkillStatusUpdate &update)
Definition: SkillStatusUpdate.cpp:234
armarx::skills::ActiveOrTerminatedSkillStatus::Aborted
@ Aborted
armarx::skills::error::SkillException
A base class for aron exceptions.
Definition: Exception.h:41
armarx::aron::data::Dict::ToAronDictDTO
static data::dto::DictPtr ToAronDictDTO(const PointerType &navigator)
Definition: Dict.cpp:139
armarx::armem::server::ltm::util::mongodb::detail::update
bool update(mongocxx::collection &coll, const nlohmann::json &query, const nlohmann::json &update)
Definition: mongodb.cpp:67
armarx::skills::ActiveOrTerminatedSkillStatus::Running
@ Running
armarx::skills::TerminatedSkillStatusUpdate
Definition: SkillStatusUpdate.h:64
armarx::skills::TerminatedSkillStatus::Failed
@ Failed
armarx::skills::SkillStatus::Running
@ Running
armarx::skills::SkillStatusUpdate::FromIce
static SkillStatusUpdate FromIce(const provider::dto::SkillStatusUpdate &update)
Definition: SkillStatusUpdate.cpp:223
armarx::skills::TerminatedSkillStatusUpdate::FromIce
static TerminatedSkillStatusUpdate FromIce(const provider::dto::SkillStatusUpdate &update)
Definition: SkillStatusUpdate.cpp:212
armarx::skills::toSkillStatus
SkillStatus toSkillStatus(const ActiveOrTerminatedSkillStatus &d)
Definition: SkillStatusUpdate.cpp:7
armarx::skills::ActiveOrTerminatedSkillStatusUpdate
Definition: SkillStatusUpdate.h:73
armarx::skills::TerminatedSkillStatusUpdate::toIce
provider::dto::SkillStatusUpdate toIce() const
Definition: SkillStatusUpdate.cpp:176
armarx
This file offers overloads of toIce() and fromIce() functions for STL container types.
Definition: ArmarXTimeserver.cpp:28
armarx::skills::SkillStatus
SkillStatus
Definition: SkillStatusUpdate.h:16
armarx::skills::SkillStatus::Succeeded
@ Succeeded
armarx::skills::fromIce
void fromIce(const provider::dto::Execution::Status &status, TerminatedSkillStatus &ret)
Definition: SkillStatusUpdate.cpp:100
armarx::skills::SkillStatusUpdateBase::executorName
std::string executorName
Definition: SkillStatusUpdate.h:56
armarx::skills::SkillStatus::Failed
@ Failed
armarx::skills::SkillStatusUpdate::toIce
provider::dto::SkillStatusUpdate toIce() const
Definition: SkillStatusUpdate.cpp:188