Skip to content
Snippets Groups Projects

ArticulatedObjectWriter: adding alternative implementation for storeArticulatedObject which should be more efficient

Merged Fabian Reister requested to merge feature/improved-ArticulatedObjectWriter into master
2 files
+ 40
0
Compare changes
  • Side-by-side
  • Inline
Files
2
@@ -14,6 +14,8 @@
namespace armarx::armem::articulated_object
{
armem::articulated_object::ArticulatedObject
convert(const VirtualRobot::Robot& obj, const armem::Time& timestamp)
{
@@ -51,6 +53,21 @@ namespace armarx::armem::articulated_object
.timestamp = timestamp};
}
armem::articulated_object::ArticulatedObject
convert2(const VirtualRobot::Robot& obj, const armem::Time& timestamp)
{
ARMARX_DEBUG << "Filename is " << obj.getFilename();
return armem::articulated_object::ArticulatedObject{
.description = {.name = obj.getType(), .xml = {}, .visualization = {}, .info = {}},
.instance = obj.getName(),
.config = {.timestamp = timestamp,
.globalPose = Eigen::Isometry3f(obj.getRootNode()->getGlobalPose()),
.jointMap = obj.getJointValues(),
.proprioception = std::nullopt},
.timestamp = timestamp};
}
bool
ArticulatedObjectWriter::storeArticulatedObject(const VirtualRobot::RobotPtr& articulatedObject,
const armem::Time& timestamp,
@@ -64,4 +81,20 @@ namespace armarx::armem::articulated_object
return store(armemArticulatedObject, isStatic);
}
bool
ArticulatedObjectWriter::storeArticulatedObject2(
const VirtualRobot::RobotPtr& articulatedObject,
const armem::Time& timestamp,
const bool isStatic)
{
ARMARX_CHECK_NOT_NULL(articulatedObject);
armarx::armem::articulated_object::ArticulatedObject armemArticulatedObject =
convert2(*articulatedObject, Time::Now());
return storeInstance(armemArticulatedObject, isStatic);
}
} // namespace armarx::armem::articulated_object
Loading