From d976f96eff4763fdbc56ef0a8e59170b885a1773 Mon Sep 17 00:00:00 2001
From: Rainer Kartmann <rainer.kartmann@kit.edu>
Date: Thu, 24 Jun 2021 20:32:14 +0200
Subject: [PATCH] Add ObjectID.withInstanceName()

---
 source/RobotAPI/libraries/ArmarXObjects/ObjectID.cpp | 5 +++++
 source/RobotAPI/libraries/ArmarXObjects/ObjectID.h   | 2 ++
 2 files changed, 7 insertions(+)

diff --git a/source/RobotAPI/libraries/ArmarXObjects/ObjectID.cpp b/source/RobotAPI/libraries/ArmarXObjects/ObjectID.cpp
index adb826019..f2d76a501 100644
--- a/source/RobotAPI/libraries/ArmarXObjects/ObjectID.cpp
+++ b/source/RobotAPI/libraries/ArmarXObjects/ObjectID.cpp
@@ -57,6 +57,11 @@ namespace armarx
         return _className == rhs._className && _dataset == rhs._dataset;
     }
 
+    ObjectID ObjectID::withInstanceName(const std::string& instanceName) const
+    {
+        return ObjectID(_dataset, _className, instanceName);
+    }
+
     bool ObjectID::operator==(const ObjectID& rhs) const
     {
         return _className == rhs._className
diff --git a/source/RobotAPI/libraries/ArmarXObjects/ObjectID.h b/source/RobotAPI/libraries/ArmarXObjects/ObjectID.h
index 73e2c6ca5..389b203a6 100644
--- a/source/RobotAPI/libraries/ArmarXObjects/ObjectID.h
+++ b/source/RobotAPI/libraries/ArmarXObjects/ObjectID.h
@@ -43,6 +43,8 @@ namespace armarx
         /// Indicates whether dataset and class name are equal.
         bool equalClass(const ObjectID& rhs) const;
 
+        ObjectID withInstanceName(const std::string& instanceName) const;
+
         /// Indicates whether dataset, class name and instance name are equal.
         bool operator==(const ObjectID& rhs) const;
         inline bool operator!=(const ObjectID& rhs) const
-- 
GitLab