29 #include <VirtualRobot/Robot.h>
38 #include <experimental/memory>
40 #include <RobotAPI/interface/units/RobotUnit/RobotUnitInterface.h>
50 #include <armarx/control/components/controller_creator/ComponentInterface.h>
100 void createRemoteGuiTab();
105 void RemoteGui_update() override;
110 const std::string& controllerType,
112 const std::string& configFilename =
"",
113 bool activate =
false,
114 bool allowReuse =
true,
115 bool cfgFromMemory =
false,
116 const Ice::Current& = Ice::emptyCurrent)
override;
119 const Ice::Current& = Ice::emptyCurrent)
override;
121 const Ice::Current& = Ice::emptyCurrent)
override;
124 const std::string& side,
125 const std::string& fileName,
126 const Ice::Current& = Ice::emptyCurrent)
override;
130 template <control::common::ControllerType T>
134 const std::string& configFilename =
"",
135 bool flagActivate =
true,
136 bool flagAllowReuse =
true,
137 bool flagFromMemory =
false);
147 void drawBoxes(const Properties& p, viz::Client& arviz);
157 static const std::string defaultName;
170 VirtualRobot::RobotNodeSetPtr m_rns_l;
171 VirtualRobot::RobotNodeSetPtr m_rns_r;
173 std::map<std::string, VirtualRobot::RobotNodeSetPtr> m_robotNodeSets;
174 std::map<std::string, unsigned int> m_controllerJointNumbers;
178 std::map<std::string, std::map<std::string, Eigen::Matrix4f>> m_prevTargetPose;
179 std::map<std::string, std::map<std::string, Eigen::VectorXf>> m_prevNullspaceJointTarget;
184 std::string robotName =
"Armar6";
185 std::string robotUnitName =
"Armar6Unit";
187 std::string ftSensorNameLeft =
"FT L_ArmL_FT";
188 std::string ftSensorNameRight =
"FT R_ArmR_FT";
190 std::string defaultRobotNodeSetLeft =
"LeftArm";
191 std::string defaultRobotNodeSetRight =
"RightArm";
194 Properties properties;
203 struct RemoteGuiTab : armarx::RemoteGui::Client::Tab
205 armarx::RemoteGui::Client::LineEdit boxLayerName;
206 armarx::RemoteGui::Client::IntSpinBox numBoxes;
208 armarx::RemoteGui::Client::Button drawBoxes;
212 template <
typename T>
215 template <
typename T>