diff --git a/source/RobotAPI/libraries/armem_objects/aron_conversions.cpp b/source/RobotAPI/libraries/armem_objects/aron_conversions.cpp index 859f3d601024ba97dd0e59e938afaba2718a95a1..39ee8bccc7bc774bd0ec200819578307983c9278 100644 --- a/source/RobotAPI/libraries/armem_objects/aron_conversions.cpp +++ b/source/RobotAPI/libraries/armem_objects/aron_conversions.cpp @@ -25,3 +25,11 @@ void armarx::armem::toAron(arondto::ObjectInstance& dto, const objpose::ObjectPo } +armarx::armem::MemoryID +armarx::armem::obj::makeObjectInstanceMemoryID(const objpose::ObjectPose& objectPose) +{ + return MemoryID("Object/Instance") + .withProviderSegmentName(objectPose.providerName) + .withEntityName(objectPose.objectID.str()) + .withTimestamp(objectPose.timestamp); +} diff --git a/source/RobotAPI/libraries/armem_objects/aron_conversions.h b/source/RobotAPI/libraries/armem_objects/aron_conversions.h index 7ea733e99c75895ff7aba463f36a0f53d0c4bd38..feeed6834096a92af81e5904d291cc7dc49b4b05 100644 --- a/source/RobotAPI/libraries/armem_objects/aron_conversions.h +++ b/source/RobotAPI/libraries/armem_objects/aron_conversions.h @@ -12,4 +12,14 @@ namespace armarx::armem void fromAron(const arondto::ObjectInstance& dto, objpose::ObjectPose& bo); void toAron(arondto::ObjectInstance& dto, const objpose::ObjectPose& bo); + +} + + +#include <RobotAPI/libraries/armem/core/MemoryID.h> + +namespace armarx::armem::obj +{ + /// Make a Memory ID for the object instance snapshot representing this pose. + MemoryID makeObjectInstanceMemoryID(const objpose::ObjectPose& objectPose); }