From d586d79052558e8fc9653e6056c9f74f66fd68ed Mon Sep 17 00:00:00 2001
From: Fabian Peller <fabian.peller-konrad@kit.edu>
Date: Tue, 17 Oct 2023 18:32:45 +0200
Subject: [PATCH] unify interface for objectWriter

---
 .../client/instance/ObjectWriter.cpp          | 41 +++++++++++--------
 .../client/instance/ObjectWriter.h            | 21 ++++------
 2 files changed, 32 insertions(+), 30 deletions(-)

diff --git a/source/RobotAPI/libraries/armem_objects/client/instance/ObjectWriter.cpp b/source/RobotAPI/libraries/armem_objects/client/instance/ObjectWriter.cpp
index 8ee596b27..80d1af559 100644
--- a/source/RobotAPI/libraries/armem_objects/client/instance/ObjectWriter.cpp
+++ b/source/RobotAPI/libraries/armem_objects/client/instance/ObjectWriter.cpp
@@ -3,29 +3,29 @@
 #include <mutex>
 #include <optional>
 
-#include <ArmarXCore/core/logging/Logging.h>
 #include <ArmarXCore/core/PackagePath.h>
+#include <ArmarXCore/core/logging/Logging.h>
 
+#include <RobotAPI/libraries/armem/client/query/Builder.h>
 #include <RobotAPI/libraries/armem/core/Time.h>
 #include <RobotAPI/libraries/armem/core/error.h>
-#include <RobotAPI/libraries/armem/client/query/Builder.h>
 #include <RobotAPI/libraries/armem/core/wm/memory_definitions.h>
 #include <RobotAPI/libraries/armem/util/util.h>
-#include <RobotAPI/libraries/armem_robot/robot_conversions.h>
-#include <RobotAPI/libraries/armem_robot/aron_conversions.h>
-#include <RobotAPI/libraries/armem_robot/aron/Robot.aron.generated.h>
 #include <RobotAPI/libraries/armem_objects/aron/Attachment.aron.generated.h>
 #include <RobotAPI/libraries/armem_objects/aron_conversions.h>
+#include <RobotAPI/libraries/armem_robot/aron/Robot.aron.generated.h>
+#include <RobotAPI/libraries/armem_robot/aron_conversions.h>
+#include <RobotAPI/libraries/armem_robot/robot_conversions.h>
 #include <RobotAPI/libraries/aron/common/aron_conversions.h>
 
-
 namespace armarx::armem::obj::instance
 {
-    Writer::Writer(armem::client::MemoryNameSystem& memoryNameSystem) :
-        memoryNameSystem(memoryNameSystem)
-    {}
+    Writer::Writer()
+    {
+    }
 
-    void Writer::registerPropertyDefinitions(armarx::PropertyDefinitionsPtr& def)
+    void
+    Writer::registerPropertyDefinitions(armarx::PropertyDefinitionsPtr& def)
     {
         ARMARX_DEBUG << "Writer: registerPropertyDefinitions";
 
@@ -38,8 +38,8 @@ namespace armarx::armem::obj::instance
                       "Name of the memory core segment to use for object instances.");
     }
 
-
-    void Writer::connect()
+    void
+    Writer::connect(armem::client::MemoryNameSystem& memoryNameSystem)
     {
         // Wait for the memory to become available and add it as dependency.
         ARMARX_IMPORTANT << "Writer: Waiting for memory '" << properties.memoryName << "' ...";
@@ -55,7 +55,10 @@ namespace armarx::armem::obj::instance
         }
     }
 
-    bool Writer::commitObject(const armem::arondto::ObjectInstance& inst, const std::string& provider, const armem::Time& t)
+    bool
+    Writer::commitObject(const armem::arondto::ObjectInstance& inst,
+                         const std::string& provider,
+                         const armem::Time& t)
     {
         armem::Commit c;
         auto& e = c.add();
@@ -63,19 +66,21 @@ namespace armarx::armem::obj::instance
         e.entityID.memoryName = properties.memoryName;
         e.entityID.coreSegmentName = properties.coreSegmentName;
         e.entityID.providerSegmentName = provider;
-        e.entityID.entityName = inst.pose.objectID.dataset + "/" + inst.pose.objectID.className + "/" + inst.pose.objectID.instanceName;
+        e.entityID.entityName = inst.pose.objectID.dataset + "/" + inst.pose.objectID.className +
+                                "/" + inst.pose.objectID.instanceName;
         e.referencedTime = t;
         e.sentTime = armem::Time::Now();
-        e.instancesData = { inst.toAron() };
+        e.instancesData = {inst.toAron()};
 
         auto res = memoryWriter.commit(c);
 
-        if(!res.allSuccess())
+        if (!res.allSuccess())
         {
-            ARMARX_ERROR << "Failed to commit an ObjectInstance to memory: " << res.allErrorMessages();
+            ARMARX_ERROR << "Failed to commit an ObjectInstance to memory: "
+                         << res.allErrorMessages();
             return false;
         }
         return true;
     }
 
-}  // namespace armarx::armem::instance
+} // namespace armarx::armem::obj::instance
diff --git a/source/RobotAPI/libraries/armem_objects/client/instance/ObjectWriter.h b/source/RobotAPI/libraries/armem_objects/client/instance/ObjectWriter.h
index 972227993..d44950284 100644
--- a/source/RobotAPI/libraries/armem_objects/client/instance/ObjectWriter.h
+++ b/source/RobotAPI/libraries/armem_objects/client/instance/ObjectWriter.h
@@ -28,40 +28,37 @@
 
 #include <RobotAPI/libraries/armem/client/MemoryNameSystem.h>
 #include <RobotAPI/libraries/armem/client/Writer.h>
-#include <RobotAPI/libraries/armem_objects/types.h>
-
 #include <RobotAPI/libraries/armem_objects/aron/ObjectInstance.aron.generated.h>
-
+#include <RobotAPI/libraries/armem_objects/types.h>
 
 namespace armarx::armem::obj::instance
 {
     class Writer
     {
     public:
-        Writer(armem::client::MemoryNameSystem& memoryNameSystem);
+        Writer();
         virtual ~Writer() = default;
 
         void registerPropertyDefinitions(armarx::PropertyDefinitionsPtr& def);
-        void connect();
+        void connect(armem::client::MemoryNameSystem& memoryNameSystem);
 
-        bool commitObject(const armem::arondto::ObjectInstance& inst, const std::string& provider, const armem::Time&);
+        bool commitObject(const armem::arondto::ObjectInstance& inst,
+                          const std::string& provider,
+                          const armem::Time&);
 
 
     private:
-
-
         struct Properties
         {
-            std::string memoryName                  = "Object";
-            std::string coreSegmentName             = "Instance";
+            std::string memoryName = "Object";
+            std::string coreSegmentName = "Instance";
         } properties;
 
         const std::string propertyPrefix = "mem.obj.instance.";
 
-        armem::client::MemoryNameSystem& memoryNameSystem;
         armem::client::Writer memoryWriter;
         mutable std::mutex memoryWriterMutex;
     };
 
 
-}  // namespace armarx::armem::instance
+} // namespace armarx::armem::obj::instance
-- 
GitLab