SkillStatusUpdate.h
Go to the documentation of this file.
1#pragma once
2
3#include <optional>
4
7
8#include <RobotAPI/interface/skills/SkillProviderInterface.h>
10
11#include "SkillExecutionID.h"
12
13namespace armarx
14{
15 namespace skills
16 {
17 enum class SkillStatus
18 {
23 Failed = 8,
26 };
27
35
37 {
38 Failed = 4,
41 };
42
45
46 void toIce(core::dto::Execution::Status& ret, const SkillStatus& status);
47 void toIce(core::dto::Execution::Status& ret, const ActiveOrTerminatedSkillStatus& status);
48 void toIce(core::dto::Execution::Status& ret, const TerminatedSkillStatus& status);
49
50 void fromIce(const core::dto::Execution::Status& status, TerminatedSkillStatus& ret);
51 void fromIce(const core::dto::Execution::Status& status,
53 void fromIce(const core::dto::Execution::Status& status, SkillStatus& ret);
54
56 const TerminatedSkillStatus t2);
59
61 {
62 // header
65 callback::dti::SkillProviderCallbackInterfacePrx callbackInterface;
66
67 // data
69
70 manager::dto::SkillStatusUpdate toManagerIce() const;
71
72 provider::dto::SkillStatusUpdate toProviderIce() const;
73 };
74
75 // Will be returned after the execution of a skill
77 {
79
80 bool hasBeenTerminated() const;
81
82 bool hasBeenSucceeded() const;
83
84 manager::dto::SkillStatusUpdate toManagerIce() const;
85
86 provider::dto::SkillStatusUpdate toProviderIce() const;
87
89 FromIce(const provider::dto::SkillStatusUpdate& update,
90 const std::optional<skills::ProviderID>& providerId = std::nullopt);
91
93 FromIce(const manager::dto::SkillStatusUpdate& update);
94 };
95
96 // Will be returned from periodic skills which can still run
98 {
100
101 bool hasBeenTerminated() const;
102
103 bool hasBeenSucceeded() const;
104
105 manager::dto::SkillStatusUpdate toManagerIce() const;
106
107 provider::dto::SkillStatusUpdate toProviderIce() const;
108
110 FromIce(const provider::dto::SkillStatusUpdate& update,
111 const std::optional<skills::ProviderID>& providerId = std::nullopt);
112
114 FromIce(const manager::dto::SkillStatusUpdate& update);
115 };
116
117 // Will be used as status updates from skills to the callback interface
119 {
121
122 bool operator<(const SkillStatusUpdate& o) const;
123
124 bool operator<=(const SkillStatusUpdate& o) const;
125
126 bool hasBeenConstructed() const;
127
128 bool hasBeenInitialized() const;
129
130 bool hasBeenPrepared() const;
131
132 bool hasBeenRunning() const;
133
134 bool hasBeenTerminated() const;
135
136 bool hasBeenSucceeded() const;
137
138 manager::dto::SkillStatusUpdate toManagerIce() const;
139
140 provider::dto::SkillStatusUpdate toProviderIce() const;
141
142 static SkillStatusUpdate
143 FromIce(const provider::dto::SkillStatusUpdate& update,
144 const std::optional<skills::ProviderID>& providerId = std::nullopt);
145
146 static SkillStatusUpdate FromIce(const manager::dto::SkillStatusUpdate& update);
147 };
148
150 const std::optional<armarx::skills::TerminatedSkillStatusUpdate>& update);
151
153 const std::optional<armarx::skills::TerminatedSkillStatusUpdate>& update);
154
155 } // namespace skills
156} // namespace armarx
std::shared_ptr< Dict > DictPtr
Definition Dict.h:42
This file is part of ArmarX.
bool skillExecutionSucceeded(const std::optional< armarx::skills::TerminatedSkillStatusUpdate > &update)
bool skillExecutionFailed(const std::optional< armarx::skills::TerminatedSkillStatusUpdate > &update)
void fromIce(const core::dto::Execution::Status &status, TerminatedSkillStatus &ret)
SkillStatus toSkillStatus(const ActiveOrTerminatedSkillStatus &d)
void toIce(core::dto::Execution::Status &ret, const SkillStatus &status)
TerminatedSkillStatus mergeSkillStatuseses(const TerminatedSkillStatus t1, const TerminatedSkillStatus t2)
This file offers overloads of toIce() and fromIce() functions for STL container types.
manager::dto::SkillStatusUpdate toManagerIce() const
provider::dto::SkillStatusUpdate toProviderIce() const
static ActiveOrTerminatedSkillStatusUpdate FromIce(const provider::dto::SkillStatusUpdate &update, const std::optional< skills::ProviderID > &providerId=std::nullopt)
callback::dti::SkillProviderCallbackInterfacePrx callbackInterface
manager::dto::SkillStatusUpdate toManagerIce() const
provider::dto::SkillStatusUpdate toProviderIce() const
static SkillStatusUpdate FromIce(const provider::dto::SkillStatusUpdate &update, const std::optional< skills::ProviderID > &providerId=std::nullopt)
bool operator<=(const SkillStatusUpdate &o) const
manager::dto::SkillStatusUpdate toManagerIce() const
provider::dto::SkillStatusUpdate toProviderIce() const
bool operator<(const SkillStatusUpdate &o) const
static TerminatedSkillStatusUpdate FromIce(const provider::dto::SkillStatusUpdate &update, const std::optional< skills::ProviderID > &providerId=std::nullopt)
manager::dto::SkillStatusUpdate toManagerIce() const
provider::dto::SkillStatusUpdate toProviderIce() const