SkillStatusUpdate.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <string>
4 #include <vector>
5 
7 #include <RobotAPI/interface/skills/SkillProviderInterface.h>
8 
9 #include "SkillID.h"
10 #include "SkillParameterization.h"
11 
12 namespace armarx
13 {
14  namespace skills
15  {
16  enum class SkillStatus
17  {
18  Idle = 0,
19  Scheduled = 1,
20  Running = 2,
21  Failed = 4,
22  Succeeded = 8,
23  Aborted = 16
24  };
25 
27  {
28  Running = 2,
29  Failed = 4,
30  Succeeded = 8,
31  Aborted = 16
32  };
33 
35  {
36  Failed = 4,
37  Succeeded = 8,
38  Aborted = 16
39  };
40 
43 
44  void toIce(provider::dto::Execution::Status& ret, const SkillStatus& status);
45  void toIce(provider::dto::Execution::Status& ret, const ActiveOrTerminatedSkillStatus& status);
46  void toIce(provider::dto::Execution::Status& ret, const TerminatedSkillStatus& status);
47 
48  void fromIce(const provider::dto::Execution::Status& status, TerminatedSkillStatus& ret);
49  void fromIce(const provider::dto::Execution::Status& status, ActiveOrTerminatedSkillStatus& ret);
50  void fromIce(const provider::dto::Execution::Status& status, SkillStatus& ret);
51 
53  {
54  // header
55  SkillID skillId = {"NOT INITIALIZED YET", "NOT INITIALIZED YET"};
56  std::string executorName = "";
58 
59  // data
61  };
62 
63  // Will be returned after the execution of a skill
65  {
67 
68  provider::dto::SkillStatusUpdate toIce() const;
69  static TerminatedSkillStatusUpdate FromIce(const provider::dto::SkillStatusUpdate& update);
70  };
71 
72  // Will be returned from periodic skills which can still run
74  {
76 
77  provider::dto::SkillStatusUpdate toIce() const;
78  static ActiveOrTerminatedSkillStatusUpdate FromIce(const provider::dto::SkillStatusUpdate& update);
79  };
80 
81  // Will be used as status updates from skills to the callback interface
83  {
85 
86  provider::dto::SkillStatusUpdate toIce() const;
87  static SkillStatusUpdate FromIce(const provider::dto::SkillStatusUpdate& update);
88  };
89  }
90 }
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::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
armarx::skills::SkillStatus::Aborted
@ Aborted
armarx::skills::ActiveOrTerminatedSkillStatus::Succeeded
@ Succeeded
SkillID.h
armarx::skills::ActiveOrTerminatedSkillStatus::Failed
@ Failed
armarx::skills::SkillStatus::Scheduled
@ Scheduled
armarx::skills::SkillStatusUpdateBase::usedParameterization
SkillParameterization usedParameterization
Definition: SkillStatusUpdate.h:57
SkillParameterization.h
Dict.h
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::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::aron::data::DictPtr
std::shared_ptr< Dict > DictPtr
Definition: Dict.h:41
armarx::skills::TerminatedSkillStatus::Failed
@ Failed
armarx::skills::SkillStatus::Running
@ Running
armarx::skills::SkillParameterization
Definition: SkillParameterization.h:13
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::skills::SkillStatusUpdateBase
Definition: SkillStatusUpdate.h:52
armarx::skills::SkillID
Definition: SkillID.h:17
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