SkillID.h
Go to the documentation of this file.
1#pragma once
2
3#include <optional>
4#include <string>
5
6#include <RobotAPI/interface/skills/SkillManagerInterface.h>
7
8#include "ProviderID.h"
9
10namespace armarx
11{
12 namespace skills
13 {
14 class SkillID
15 {
16 public:
17 static const constexpr char* NAME_SEPARATOR = "/";
18 static const constexpr char* UNKNOWN = "UNKNOWN";
19
20 bool operator==(const SkillID& other) const;
21 bool operator!=(const SkillID& other) const;
22 bool operator<(const SkillID& other) const;
23 bool operator<=(const SkillID& other) const;
24
25 bool isFullySpecified() const;
26
27 bool isSkillSpecified() const;
28
29 bool isProviderSpecified() const;
30
31 manager::dto::SkillID toManagerIce() const;
32 provider::dto::SkillID toProviderIce() const;
33
34 static SkillID FromIce(const manager::dto::SkillID&);
35 static SkillID FromIce(const provider::dto::SkillID&,
36 const std::optional<ProviderID>& providerId = std::nullopt);
37
38 std::string toString() const;
39
40 std::optional<ProviderID> providerId = std::nullopt;
41 std::string skillName;
42 };
43
44 std::ostream& operator<<(std::ostream& os, const SkillID& id);
45 } // namespace skills
46} // namespace armarx
bool isProviderSpecified() const
Definition SkillID.cpp:90
std::string toString() const
Definition SkillID.cpp:68
bool operator<=(const SkillID &other) const
Definition SkillID.cpp:30
bool operator==(const SkillID &other) const
Definition SkillID.cpp:12
bool operator!=(const SkillID &other) const
Definition SkillID.cpp:18
std::optional< ProviderID > providerId
Definition SkillID.h:40
bool isFullySpecified() const
Definition SkillID.cpp:78
bool operator<(const SkillID &other) const
Definition SkillID.cpp:24
provider::dto::SkillID toProviderIce() const
Definition SkillID.cpp:62
manager::dto::SkillID toManagerIce() const
Definition SkillID.cpp:55
static const constexpr char * NAME_SEPARATOR
Definition SkillID.h:17
bool isSkillSpecified() const
Definition SkillID.cpp:84
static SkillID FromIce(const manager::dto::SkillID &)
Definition SkillID.cpp:36
static const constexpr char * UNKNOWN
Definition SkillID.h:18
std::string skillName
Definition SkillID.h:41
This file is part of ArmarX.
std::ostream & operator<<(std::ostream &os, const ProviderID &id)
This file offers overloads of toIce() and fromIce() functions for STL container types.