FluxioProvider.cpp
Go to the documentation of this file.
1#include "FluxioProvider.h"
2
3#include <experimental/memory>
4#include <memory>
5
7
11
12namespace armarx
13{
14 namespace skills
15 {
16 manager::dto::FluxioProvider
18 {
19 manager::dto::FluxioProvider ret;
20
21 ret.id = id;
22 ret.name = name;
23
24 return ret;
25 }
26
27 manager::dto::FluxioIdentificator
29 {
30 manager::dto::FluxioIdentificator ret;
31
32 ret.id = id;
33 ret.hint = name;
34
35 return ret;
36 }
37
38 manager::arondto::FluxioIdentificator
40 {
41 manager::arondto::FluxioIdentificator ret;
42
43 ret.id = id;
44 ret.hint = name;
45
46 return ret;
47 }
48
51 const manager::dto::FluxioIdentificator& i,
52 std::map<std::string, FluxioProvider>& providersMap)
53 {
54 const auto& providerIt = providersMap.find(i.id);
55
56 if (providerIt == providersMap.end())
57 {
58 ARMARX_WARNING << "Provider with id " << i.id << " not found";
59 return nullptr;
60 }
61
62 return std::experimental::make_observer(&(providersMap[providerIt->first]));
63 }
64
65
68 const manager::arondto::FluxioIdentificator& i,
69 std::map<std::string, FluxioProvider>& providersMap)
70 {
71 const auto& providerIt = providersMap.find(i.id);
72
73 if (providerIt == providersMap.end())
74 {
75 ARMARX_WARNING << "Provider with id " << i.id << " not found";
76 return nullptr;
77 }
78
79 return std::experimental::make_observer(&(providersMap[providerIt->first]));
80 }
81
83 FluxioProvider::FromIce(const manager::dto::FluxioProvider& i)
84 {
86
87 ret.id = i.id;
88 ret.name = i.name;
89
90 return ret;
91 }
92
95 {
97 dict->addElement("id", aron::make_string(this->id));
98 dict->addElement("hint", aron::make_string(this->name));
99 return dict;
100 }
101 } // namespace skills
102} // namespace armarx
#define ARMARX_WARNING
The logging level for unexpected behaviour, but not a serious problem.
Definition Logging.h:193
std::shared_ptr< Dict > DictPtr
Definition Dict.h:42
aron::data::StringPtr make_string(_Args &&... args)
Definition String.h:76
aron::data::DictPtr make_dict(_Args &&... args)
Definition Dict.h:107
This file is part of ArmarX.
This file offers overloads of toIce() and fromIce() functions for STL container types.
observer_ptr< _Tp > make_observer(_Tp *__p) noexcept
manager::arondto::FluxioIdentificator toFluxioIdentificatorAron() const
aron::data::DictPtr toAron() const
manager::dto::FluxioProvider toManagerIce() const
static FluxioProvider FromIce(const manager::dto::FluxioProvider &i)
static std::experimental::observer_ptr< const FluxioProvider > FromFluxioIdentificatorAron(const manager::arondto::FluxioIdentificator &i, std::map< std::string, FluxioProvider > &providersMap)
static std::experimental::observer_ptr< const FluxioProvider > FromFluxioIdentificatorIce(const manager::dto::FluxioIdentificator &i, std::map< std::string, FluxioProvider > &providersMap)
manager::dto::FluxioIdentificator toFluxioIdentificatorIce() const