diff --git a/source/RobotAPI/libraries/armem_objects/server/instance/Segment.cpp b/source/RobotAPI/libraries/armem_objects/server/instance/Segment.cpp index 62dec875ea7ccb106b762edec6ae79e2341e27b0..1bf0200459eb987e6ad842c38d9138c40401dcb3 100644 --- a/source/RobotAPI/libraries/armem_objects/server/instance/Segment.cpp +++ b/source/RobotAPI/libraries/armem_objects/server/instance/Segment.cpp @@ -251,10 +251,10 @@ namespace armarx::armem::server::obj::instance synchronized = robots.reader->synchronizeRobot(*robot, timestamp); if (not synchronized) { - ARMARX_VERBOSE << "Failed to synchronize robot to timestamp " << timestamp - << " of provided object pose (" << provided.objectID - << "). This is " << (Clock::Now() - timestamp).toSecondsDouble() - << " seconds in the past."; + ARMARX_INFO << deactivateSpam(5) << "Failed to synchronize robot to timestamp " + << timestamp << " of provided object pose (" << provided.objectID + << "). This is " << (Clock::Now() - timestamp).toSecondsDouble() + << " seconds in the past."; } robotSyncTimestamp = timestamp; @@ -296,6 +296,10 @@ namespace armarx::armem::server::obj::instance } } } + else if (robot and timestamp == robotSyncTimestamp) + { + synchronized = true; + } if (not synchronized) { @@ -303,6 +307,8 @@ namespace armarx::armem::server::obj::instance * We know nothing about the current robot configuration. So the behvaiour of the * following code is the same as if we have no robot model at all. */ + ARMARX_INFO << deactivateSpam(5) + << "Robot could not be synchronized; discarding robot"; robot = nullptr; } diff --git a/source/RobotAPI/libraries/armem_objects/server/instance/SegmentAdapter.cpp b/source/RobotAPI/libraries/armem_objects/server/instance/SegmentAdapter.cpp index b3ea262d12dad291a55733bfa7914104fd30a739..3eb3e1bf3bb51703214dbb107a60ac46c96486dd 100644 --- a/source/RobotAPI/libraries/armem_objects/server/instance/SegmentAdapter.cpp +++ b/source/RobotAPI/libraries/armem_objects/server/instance/SegmentAdapter.cpp @@ -117,7 +117,7 @@ namespace armarx::armem::server::obj::instance void SegmentAdapter::reportObjectPoses( const std::string& providerName, const objpose::data::ProvidedObjectPoseSeq& providedPoses, const Ice::Current&) { - ARMARX_VERBOSE << "Received object " << providedPoses.size() << " poses from provider '" << providerName << "'."; + ARMARX_VERBOSE << "Received " << providedPoses.size() << " object poses from provider '" << providerName << "'."; updateObjectPoses(providerName, providedPoses); }