84 class [[deprecated(
"This class was moved to armarx::localization_and_mapping. It is kept for "
85 "ArmarXSimulation but should not be removed after CMake modernization of "
133 void publishSelfLocalizationOnTopic(const
PoseStamped& map_T_robot);
135 void publishSelfLocalizationToWorkingMemory(const
PoseStamped& map_T_robot);
136 void publishSelfLocalizationToLongtermMemory(const
PoseStamped& map_T_robot);
137 void publishSelfLocalizationToArMem(const
PoseStamped& map_T_robot);
141 void setupWorkingMemory();
142 void setupLongTermMemory();
145 TransformStamped toTransformStamped(const
PoseStamped& poseStamped);
149 LaserScannerSelfLocalisationListenerPrx reportTopic;
150 GlobalRobotPoseLocalizationListenerPrx globalRobotPoseTopic;
151 GlobalRobotPoseLocalizationCorrectionListenerPrx gobalRobotPoseCorrectionTopic;
154 memoryx::LongtermMemoryInterfacePrx longtermMemory;
155 memoryx::PersistentEntitySegmentBasePrx ltmSelfLocalisationSegment;
156 std::optional<
std::
string> ltmPoseEntityId;
159 memoryx::WorkingMemoryInterfacePrx workingMemory;
160 memoryx::AgentInstancesSegmentBasePrx wmAgentsMemory;
161 memoryx::AgentInstancePtr wmAgentInstance;
165 LocalizationUnitInterfacePrx localizationUnitPrx;
173 bool updateWorkingMemory =
true;
174 float workingMemoryUpdateFrequency = 50.F;
177 std::string longtermMemoryName =
"LongtermMemory";
178 bool updateLongTermMemory =
true;
179 float longtermMemoryUpdateFrequency = 1.F;
180 bool initialPoseFromLTM =
true;
183 bool updateArMem =
true;
184 float armMemUpdateFrequency = 1000.F;
187 bool useLocalizationUnit =
true;
188 std::string localizationUnitName =
"";
191 std::string agentName;
192 std::string robotRootFrame;
194 std::shared_ptr<VirtualRobot::Robot> robot;
203 Eigen::Isometry3f global_T_map;
205 std::atomic_bool connected{
false};
207 bool onConnectCalled{
false};