From 85823dbaa284269622528dd9bc4ef55c62fab24f Mon Sep 17 00:00:00 2001 From: Rainer Kartmann <rainer.kartmann@kit.edu> Date: Wed, 21 Jul 2021 10:06:38 +0200 Subject: [PATCH] Remove explicitly adding prov segment (lead to deadlock + is not necessary) --- .../server/proprioception/Segment.cpp | 21 ++----------------- 1 file changed, 2 insertions(+), 19 deletions(-) diff --git a/source/RobotAPI/libraries/armem_robot_state/server/proprioception/Segment.cpp b/source/RobotAPI/libraries/armem_robot_state/server/proprioception/Segment.cpp index 043774b77..f43d8709e 100644 --- a/source/RobotAPI/libraries/armem_robot_state/server/proprioception/Segment.cpp +++ b/source/RobotAPI/libraries/armem_robot_state/server/proprioception/Segment.cpp @@ -63,6 +63,7 @@ namespace armarx::armem::server::robot_state::proprioception const std::string providerSegmentName = kinematicUnit->getRobotName(); this->robotUnitProviderID = coreSegment->id().withProviderSegmentName(providerSegmentName); +#if 0 // TODO what is the purpose? auto encoderEntryType = std::make_shared<aron::typenavigator::ObjectNavigator>("RobotUnitEncoderEntry"); auto encoderNameType = std::make_shared<aron::typenavigator::StringNavigator>(); @@ -71,25 +72,7 @@ namespace armarx::armem::server::robot_state::proprioception encoderEntryType->addMemberType("IterationId", encoderIterationIDType); //auto encoderValueType = std::make_shared<aron::typenavigator::AnyType>(); //encoderEntryType->addMemberType("value", encoderValueType); - - ARMARX_INFO << "Adding provider segment " << p.coreSegment << "/" << providerSegmentName; - armem::data::AddSegmentInput input; - input.coreSegmentName = p.coreSegment; - input.providerSegmentName = providerSegmentName; - - { - std::lock_guard g{mutex()}; - auto result = iceMemory.addSegments({input})[0]; - - if (!result.success) - { - ARMARX_ERROR << "Could not add segment " << p.coreSegment << "/" << providerSegmentName << ". The error message is: " << result.errorMessage; - } - } - - robotUnitProviderID.memoryName = iceMemory.workingMemory->id().memoryName; - robotUnitProviderID.coreSegmentName = p.coreSegment; - robotUnitProviderID.providerSegmentName = providerSegmentName; +#endif } -- GitLab