From 5d036f7b519019396bb84875faf5d6d34af96520 Mon Sep 17 00:00:00 2001 From: alissa <alissamueller@outlook.de> Date: Tue, 29 Jun 2021 18:04:10 +0200 Subject: [PATCH] adjusted grasp memory and writer to new armem changes --- .../armem/server/GraspMemory/GraspMemory.cpp | 4 ++-- .../GraspingUtility/GraspCandidateWriter.cpp | 19 ++++++++++--------- .../GraspingUtility/GraspCandidateWriter.h | 6 +++--- .../GraspingUtility/aron_conversions.cpp | 16 ++++++++-------- 4 files changed, 23 insertions(+), 22 deletions(-) diff --git a/source/RobotAPI/components/armem/server/GraspMemory/GraspMemory.cpp b/source/RobotAPI/components/armem/server/GraspMemory/GraspMemory.cpp index 23f894786..034ad0f25 100644 --- a/source/RobotAPI/components/armem/server/GraspMemory/GraspMemory.cpp +++ b/source/RobotAPI/components/armem/server/GraspMemory/GraspMemory.cpp @@ -34,9 +34,9 @@ namespace armarx::armem::server::grasp workingMemory.name() = memoryName; workingMemory.addCoreSegment("GraspCandidate", - armarx::grasping::arondto::GraspCandidate::toInitialAronType()); + armarx::grasping::arondto::GraspCandidate::toAronType()); workingMemory.addCoreSegment("BimanualGraspCandidate", - armarx::grasping::arondto::BimanualGraspCandidate::toInitialAronType()); + armarx::grasping::arondto::BimanualGraspCandidate::toAronType()); } void GraspMemory::onConnectComponent() diff --git a/source/RobotAPI/libraries/GraspingUtility/GraspCandidateWriter.cpp b/source/RobotAPI/libraries/GraspingUtility/GraspCandidateWriter.cpp index 7b870dd1a..709b9c092 100644 --- a/source/RobotAPI/libraries/GraspingUtility/GraspCandidateWriter.cpp +++ b/source/RobotAPI/libraries/GraspingUtility/GraspCandidateWriter.cpp @@ -1,13 +1,14 @@ #include "GraspCandidateWriter.h" #include <RobotAPI/libraries/GraspingUtility/aron/GraspCandidate.aron.generated.h> #include <RobotAPI/libraries/GraspingUtility/aron_conversions.h> +#include <RobotAPI/libraries/armem/core/error/mns.h> namespace armarx::armem { - GraspCandidateWriter::GraspCandidateWriter(armem::ClientWriterComponentPluginUser& component) - : component(component) + GraspCandidateWriter::GraspCandidateWriter(armem::client::MemoryNameSystem& memoryNameSystem) + : memoryNameSystem(memoryNameSystem) { } @@ -16,17 +17,17 @@ namespace armarx::armem // Wait for the memory to become available and add it as dependency. ARMARX_IMPORTANT << "GraspCandidateWriter: Waiting for memory '" << properties.memoryName << "' ..."; - auto result = component.useMemory(properties.memoryName); - if (not result.success) + try { - ARMARX_ERROR << result.errorMessage; + memoryWriter = memoryNameSystem.useWriter(properties.memoryName); + ARMARX_IMPORTANT << "GraspCandidateWriter: Connected to memory '" << properties.memoryName << "'"; + } + catch (const armem::error::CouldNotResolveMemoryServer& e) + { + ARMARX_ERROR << e.what(); return; } - ARMARX_IMPORTANT << "GraspCandidateWriter: Connected to memory '" << properties.memoryName; - - memoryWriter.setWritingMemory(result.proxy); - } void GraspCandidateWriter::registerPropertyDefinitions(armarx::PropertyDefinitionsPtr& def) diff --git a/source/RobotAPI/libraries/GraspingUtility/GraspCandidateWriter.h b/source/RobotAPI/libraries/GraspingUtility/GraspCandidateWriter.h index 10a502747..a38ab8f93 100644 --- a/source/RobotAPI/libraries/GraspingUtility/GraspCandidateWriter.h +++ b/source/RobotAPI/libraries/GraspingUtility/GraspCandidateWriter.h @@ -12,7 +12,7 @@ namespace armarx::armem class GraspCandidateWriter { public: - GraspCandidateWriter(armem::ClientWriterComponentPluginUser& component); + GraspCandidateWriter(armem::client::MemoryNameSystem& memoryNameSystem); void connect(); @@ -36,6 +36,8 @@ namespace armarx::armem const std::string& providerName, const armem::Time& timestamp, std::string coreMemoryName); + armem::client::MemoryNameSystem& memoryNameSystem; + armem::client::Writer memoryWriter; struct Properties @@ -50,8 +52,6 @@ namespace armarx::armem const std::string propertyPrefix = "mem.grasping."; - armem::ClientWriterComponentPluginUser& component; - }; diff --git a/source/RobotAPI/libraries/GraspingUtility/aron_conversions.cpp b/source/RobotAPI/libraries/GraspingUtility/aron_conversions.cpp index d70ff6310..2504df79b 100644 --- a/source/RobotAPI/libraries/GraspingUtility/aron_conversions.cpp +++ b/source/RobotAPI/libraries/GraspingUtility/aron_conversions.cpp @@ -116,7 +116,7 @@ void armarx::grasping::toAron(armarx::grasping::arondto::GraspCandidate& dto, else { dto.executionHintsValid = false; - dto.executionHints.initialize(); + dto.executionHints.toAron(); } dto.graspPose = fromIce(bo.graspPose); dto.graspSuccessProbability = bo.graspSuccessProbability; @@ -131,7 +131,7 @@ void armarx::grasping::toAron(armarx::grasping::arondto::GraspCandidate& dto, else { dto.reachabilityInfoValid = false; - dto.reachabilityInfo.initialize(); + dto.reachabilityInfo.toAron(); } dto.robotPose = fromIce(bo.robotPose); dto.side = bo.side; @@ -144,7 +144,7 @@ void armarx::grasping::toAron(armarx::grasping::arondto::GraspCandidate& dto, else { dto.sourceInfoValid = false; - dto.sourceInfo.initialize(); + dto.sourceInfo.toAron(); } dto.targetFrame = bo.targetFrame; } @@ -226,7 +226,7 @@ void armarx::grasping::toAron(armarx::grasping::arondto::BimanualGraspCandidate& else { dto.executionHintsRightValid = false; - dto.executionHintsRight.initialize(); + dto.executionHintsRight.toAron(); } if (bo.executionHintsLeft) { @@ -236,7 +236,7 @@ void armarx::grasping::toAron(armarx::grasping::arondto::BimanualGraspCandidate& else { dto.executionHintsLeftValid = false; - dto.executionHintsLeft.initialize(); + dto.executionHintsLeft.toAron(); } dto.graspPoseRight = fromIce(bo.graspPoseRight); @@ -252,7 +252,7 @@ void armarx::grasping::toAron(armarx::grasping::arondto::BimanualGraspCandidate& else { dto.reachabilityInfoRightValid = false; - dto.reachabilityInfoRight.initialize(); + dto.reachabilityInfoRight.toAron(); } if (bo.reachabilityInfoLeft) { @@ -262,7 +262,7 @@ void armarx::grasping::toAron(armarx::grasping::arondto::BimanualGraspCandidate& else { dto.reachabilityInfoLeftValid = false; - dto.reachabilityInfoLeft.initialize(); + dto.reachabilityInfoLeft.toAron(); } dto.robotPose = fromIce(bo.robotPose); dto.sourceFrame = bo.sourceFrame; @@ -274,7 +274,7 @@ void armarx::grasping::toAron(armarx::grasping::arondto::BimanualGraspCandidate& else { dto.sourceInfoValid = false; - dto.sourceInfo.initialize(); + dto.sourceInfo.toAron(); } dto.targetFrame = bo.targetFrame; dto.inwardsVectorRight = fromIce(bo.inwardsVectorRight); -- GitLab