FluxioControlNode.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <RobotAPI/interface/skills/SkillManagerInterface.h>
4 #include <RobotAPI/libraries/skills/core/aron/FluxioNode.aron.generated.h>
5 
6 #include "FluxioNode.h"
7 #include "FluxioParameter.h"
8 
9 namespace armarx
10 {
11  namespace skills
12  {
13 
15  {
16  UNKNOWN = 0,
17  SPLITTER = 1,
18  AND_MERGER = 2,
19  };
20 
21  struct FluxioControlNode : public FluxioNode
22  {
24  std::map<std::string, FluxioParameter> parametersMap;
25 
26  std::optional<manager::dto::FluxioNode> toManagerIce() const override;
27  std::optional<manager::arondto::FluxioNode> toAron() const override;
28 
29  static std::optional<FluxioControlNode>
30  FromIce(const manager::dto::FluxioNode& i,
31  std::map<std::string, FluxioProfile>& profilesMap,
32  std::map<std::string, aron::type::ObjectPtr>& typesMap);
33  static std::optional<FluxioControlNode>
34  FromAron(const manager::arondto::FluxioNode& i,
35  std::map<std::string, FluxioProfile>& profilesMap,
36  std::map<std::string, aron::type::ObjectPtr>& typesMap);
38  std::optional<std::string>
40  };
41  } // namespace skills
42 } // namespace armarx
skills
This file is part of ArmarX.
armarx::skills::FluxioControlNode::parametersMap
std::map< std::string, FluxioParameter > parametersMap
Definition: FluxioControlNode.h:24
armarx::skills::FluxioNode
Definition: FluxioNode.h:23
armarx::skills::FluxioControlNode::FluxioControlNodeTypeFromString
FluxioControlNodeType FluxioControlNodeTypeFromString(const std::string &type)
armarx::skills::FluxioControlNode::toManagerIce
std::optional< manager::dto::FluxioNode > toManagerIce() const override
Definition: FluxioControlNode.cpp:56
armarx::skills::FluxioControlNodeType
FluxioControlNodeType
Definition: FluxioControlNode.h:14
armarx::skills::FluxioControlNode::FluxioControlNodeTypeToString
std::optional< std::string > FluxioControlNodeTypeToString(const FluxioControlNodeType &type)
armarx::skills::FluxioControlNode::FromAron
static std::optional< FluxioControlNode > FromAron(const manager::arondto::FluxioNode &i, std::map< std::string, FluxioProfile > &profilesMap, std::map< std::string, aron::type::ObjectPtr > &typesMap)
Definition: FluxioControlNode.cpp:162
FluxioParameter.h
armarx::skills::FluxioControlNode::toAron
std::optional< manager::arondto::FluxioNode > toAron() const override
Definition: FluxioControlNode.cpp:96
armarx::skills::FluxioControlNodeType::AND_MERGER
@ AND_MERGER
armarx::skills::FluxioControlNode
Definition: FluxioControlNode.h:21
armarx::skills::FluxioControlNode::FromIce
static std::optional< FluxioControlNode > FromIce(const manager::dto::FluxioNode &i, std::map< std::string, FluxioProfile > &profilesMap, std::map< std::string, aron::type::ObjectPtr > &typesMap)
Definition: FluxioControlNode.cpp:136
armarx::skills::FluxioControlNode::controlType
FluxioControlNodeType controlType
Definition: FluxioControlNode.h:23
armarx
This file offers overloads of toIce() and fromIce() functions for STL container types.
Definition: ArmarXTimeserver.cpp:27
FluxioNode.h
armarx::skills::FluxioControlNodeType::SPLITTER
@ SPLITTER
armarx::skills::FluxioControlNodeType::UNKNOWN
@ UNKNOWN