22 #include <RobotAPI/libraries/armem_robot_state/aron/Proprioception.aron.generated.h>
23 #include <RobotAPI/libraries/armem_robot_state/aron/Robot.aron.generated.h>
24 #include <RobotAPI/libraries/armem_robot_state/aron/RobotState.aron.generated.h>
25 #include <RobotAPI/libraries/armem_robot_state/aron/Transform.aron.generated.h>
26 #include <RobotAPI/libraries/armem_robot_state/aron/TransformHeader.aron.generated.h>
32 namespace fs = ::std::filesystem;
37 properties(r.properties), propertyPrefix(r.propertyPrefix), memoryWriter(r.memoryWriter)
78 update.entityID = entityID;
80 arondto::RobotDescription aronDescription;
81 toAron(aronDescription, description);
83 update.instancesData = {aronDescription.toAron()};
84 update.referencedTime = timestamp;
91 if (not updateResult.success)
102 const std::string& robotName,
107 const auto providerId =
110 .withTimestamp(timestamp);
113 update.entityID = entityID;
115 arondto::Transform aronTransform;
119 aronTransform.header.agent = robotName;
122 aronTransform.header.timestamp = timestamp;
124 aronTransform.transform = globalRootPose;
127 update.instancesData = {aronTransform.toAron()};
128 update.referencedTime = timestamp;
135 if (not updateResult.success)
146 const std::string& robotTypeName,
147 const std::string& robotName,
153 const auto entityID = providerId.withEntityName(robotName).withTimestamp(timestamp);
156 update.entityID = entityID;
158 arondto::Proprioception aronProprioception;
159 aronProprioception.joints.position = jointMap;
161 update.instancesData = {aronProprioception.toAron()};
162 update.referencedTime = timestamp;
169 if (not updateResult.success)
180 const std::string& robotTypeName,
181 const std::string& robotName,
186 const bool successProp =
189 return successLoc and successProp;