From 276312cf37a462db2dfa8280db2970a3a79e48b8 Mon Sep 17 00:00:00 2001 From: Rainer Kartmann <rainer.kartmann@kit.edu> Date: Fri, 16 Jul 2021 12:18:27 +0200 Subject: [PATCH] Update RobotStateWriter --- .../armem/server/RobotStateMemory/RobotStateMemory.cpp | 2 +- .../armem/server/RobotStateMemory/RobotStateWriter.cpp | 10 ++++------ .../armem/server/RobotStateMemory/RobotStateWriter.h | 3 +-- 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/source/RobotAPI/components/armem/server/RobotStateMemory/RobotStateMemory.cpp b/source/RobotAPI/components/armem/server/RobotStateMemory/RobotStateMemory.cpp index 6d37d9203..dd2a56edb 100644 --- a/source/RobotAPI/components/armem/server/RobotStateMemory/RobotStateMemory.cpp +++ b/source/RobotAPI/components/armem/server/RobotStateMemory/RobotStateMemory.cpp @@ -164,7 +164,7 @@ namespace armarx::armem::server::robot_state { robotUnit.writer.run( robotUnit.pollFrequency, robotUnit.dataQueue, robotUnit.dataMutex, - iceMemory, localizationSegment, workingMemoryMutex + iceMemory, localizationSegment ); }, "Robot State Writer"); diff --git a/source/RobotAPI/components/armem/server/RobotStateMemory/RobotStateWriter.cpp b/source/RobotAPI/components/armem/server/RobotStateMemory/RobotStateWriter.cpp index 8b49307bd..e4b2df5fc 100644 --- a/source/RobotAPI/components/armem/server/RobotStateMemory/RobotStateWriter.cpp +++ b/source/RobotAPI/components/armem/server/RobotStateMemory/RobotStateWriter.cpp @@ -65,11 +65,9 @@ namespace armarx::armem::server::robot_state } - void RobotStateWriter::run( - float pollFrequency, - std::queue<RobotUnitData>& dataQueue, std::mutex& dataMutex, - MemoryToIceAdapter& memory, localization::Segment& localizationSegment, - std::mutex& workingMemoryMutex) + void RobotStateWriter::run(float pollFrequency, + std::queue<RobotUnitData>& dataQueue, std::mutex& dataMutex, + MemoryToIceAdapter& memory, localization::Segment& localizationSegment) { CycleUtil cycle(static_cast<int>(1000.f / pollFrequency)); while (task and not task->isStopped()) @@ -97,9 +95,9 @@ namespace armarx::armem::server::robot_state armem::CommitResult result; { - std::scoped_lock lock(workingMemoryMutex); endLock = std::chrono::high_resolution_clock::now(); + // Commits locks the core segment. result = memory.commit(update.proprioception); endProprioception = std::chrono::high_resolution_clock::now(); diff --git a/source/RobotAPI/components/armem/server/RobotStateMemory/RobotStateWriter.h b/source/RobotAPI/components/armem/server/RobotStateMemory/RobotStateWriter.h index 8111357d2..93ba74d2d 100644 --- a/source/RobotAPI/components/armem/server/RobotStateMemory/RobotStateWriter.h +++ b/source/RobotAPI/components/armem/server/RobotStateMemory/RobotStateWriter.h @@ -61,8 +61,7 @@ namespace armarx::armem::server::robot_state void run(float pollFrequency, std::queue<RobotUnitData>& dataQueue, std::mutex& dataMutex, MemoryToIceAdapter& memory, - localization::Segment& localizationSegment, - std::mutex& workingMemoryMutex + localization::Segment& localizationSegment ); -- GitLab