35 #include <RobotAPI/interface/units/KinematicUnitInterface.h>
36 #include <RobotAPI/interface/units/TCPControlUnit.h>
37 #include <RobotAPI/interface/observers/KinematicUnitObserverInterface.h>
38 #include <RobotAPI/interface/core/RobotState.h>
40 #include <RobotAPI/interface/units/PlatformUnitInterface.h>
41 #include <RobotAPI/interface/observers/PlatformUnitObserverInterface.h>
45 #include <VirtualRobot/VirtualRobot.h>
47 #include <MemoryX/interface/components/WorkingMemoryInterface.h>
48 #include <MemoryX/interface/observers/ObjectMemoryObserverInterface.h>
49 #include <MemoryX/interface/components/PriorKnowledgeInterface.h>
53 #include <RobotAPI/interface/components/ViewSelectionInterface.h>
69 defineRequiredProperty<std::string>(
"KinematicUnitName",
"Name of the kinematic unit that should be used");
70 defineRequiredProperty<std::string>(
"KinematicUnitObserverName",
"Name of the kinematic unit observer that should be used");
71 defineOptionalProperty<std::string>(
"RobotStateComponentName",
"RobotStateComponent",
"Name of the robot state component that should be used");
72 defineOptionalProperty<std::string>(
"TCPControlUnitName",
"TCPControlUnit",
"Name of the tcp control unit component that should be used");
73 defineOptionalProperty<std::string>(
"WorkingMemoryName",
"WorkingMemory",
"Name of the WorkingMemory component that should be used");
74 defineOptionalProperty<std::string>(
"ObjectMemoryObserverName",
"ObjectMemoryObserver",
"Name of the ObjectMemoryObserver component that should be used");
75 defineOptionalProperty<std::string>(
"PriorKnowledgeName",
"PriorKnowledge",
"Name of the PriorKnowledge component that should be used");
76 defineOptionalProperty<std::string>(
"PlatformUnitName",
"PlatformUnitDynamicSimulation",
"Name of the PlatformUnit to use");
77 defineOptionalProperty<std::string>(
"PlatformUnitObserverName",
"PlatformUnitObserver",
"Name of the PlatformUnitObserver to use");
78 defineOptionalProperty<std::string>(
"ForceTorqueObserverName",
"ForceTorqueObserver",
"Name of the ForceTorqueObserver to use");
79 defineOptionalProperty<std::string>(
"TCPControlUnitObserverName",
"TCPControlUnitObserver",
"Name of the tcp control unit observer that should be used");
80 defineOptionalProperty<std::string>(
"ViewSelectionName",
"ViewSelection",
"Name of the ViewSelection component that should be used");
95 return "CoupledInteractionGroupStatechartContext";
97 void onInitStatechartContext()
override;
98 void onConnectStatechartContext()
override;
107 return robotStateComponent;
111 return kinematicUnitPrx;
115 return getProperty<std::string>(
"KinematicUnitObserverName").getValue();
119 return tcpControlPrx;
123 return tcpControlUnitObserverPrx;
127 return workingMemoryProxy;
131 return objectMemoryObserverProxy;
135 return priorKnowledgeProxy;
139 return platformUnitPrx;
143 return platformUnitObserverPrx;
148 return debugDrawerTopicProxy;
154 return platformUnitObserverName;
159 return viewSelectionProxy;
163 return ftUnitObserverPrx;
168 return getProperty<std::string>(
"ForceTorqueObserverName").getValue();
180 KinematicUnitInterfacePrx kinematicUnitPrx;
181 KinematicUnitObserverInterfacePrx kinematicUnitObserverPrx;
182 TCPControlUnitInterfacePrx tcpControlPrx;
183 TCPControlUnitObserverInterfacePrx tcpControlUnitObserverPrx;
186 memoryx::WorkingMemoryInterfacePrx workingMemoryProxy;
187 memoryx::ObjectMemoryObserverInterfacePrx objectMemoryObserverProxy;
188 memoryx::PriorKnowledgeInterfacePrx priorKnowledgeProxy;
192 ViewSelectionInterfacePrx viewSelectionProxy;
194 PlatformUnitInterfacePrx platformUnitPrx;
195 PlatformUnitObserverInterfacePrx platformUnitObserverPrx;
196 std::string platformUnitName;
197 std::string platformUnitObserverName;
199 ForceTorqueUnitObserverInterfacePrx ftUnitObserverPrx;