4#include <Eigen/Geometry>
6#include <SimoxUtility/algorithm/string/string_tools.h>
7#include <VirtualRobot/Nodes/RobotNode.h>
8#include <VirtualRobot/Robot.h>
25 const std::vector<std::string> packages =
27 const std::string
package = armarx::ArmarXDataPath::getProject(packages, obj.getFilename());
30 const std::string fileRelPath = [&obj, &package]() -> std::string
32 if (simox::alg::starts_with(obj.getFilename(), package))
35 const std::string fixedFilename = obj.getFilename().substr(package.size() + 1, -1);
39 return obj.getFilename();
43 .description = {.name = obj.getType(),
49 .instance = obj.getName(),
51 .globalPose = Eigen::Isometry3f(obj.getRootNode()->getGlobalPose()),
52 .jointMap = obj.getJointValues(),
53 .proprioception = std::nullopt},
64 .description = {.name = obj.getType(), .xml = {}, .visualization = {}, .info = {}},
65 .instance = obj.getName(),
67 .globalPose = Eigen::Isometry3f(obj.getRootNode()->getGlobalPose()),
68 .jointMap = obj.getJointValues(),
69 .proprioception = std::nullopt},
85 return store(armemArticulatedObject, isStatic);
97 convertWithoutPackagePath(*articulatedObject,
timestamp);
static std::string getProject(const std::vector< std::string > &projects, const std::string &relativeFilename)
static std::vector< std::string > FindAllArmarXSourcePackages()
bool storeArticulatedObject(const VirtualRobot::RobotPtr &articulatedObject, const armem::Time ×tamp, bool isStatic=false)
Stores the articulated object in the memory.
bool storeArticulatedObjectWithObjectClass(const VirtualRobot::RobotPtr &articulatedObject, const armem::Time ×tamp, bool isStatic=false)
Stores the articulated object.
bool store(const ArticulatedObject &obj, bool isStatic) const override
bool storeInstance(const ArticulatedObject &obj, bool isStatic) const
#define ARMARX_CHECK_NOT_NULL(ptr)
This macro evaluates whether ptr is not null and if it turns out to be false it will throw an Express...
#define ARMARX_DEBUG
The logging level for output that is only interesting while debugging.
std::shared_ptr< class Robot > RobotPtr
armarx::armem::robot_state::Robot ArticulatedObject
armarx::core::time::DateTime Time