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