From ca4b7ca4e1371f758283c0ee7291df556a78b009 Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: Thu, 18 Feb 2021 13:38:33 +0100
Subject: [PATCH] Maybe improve debug observer values

---
 .../ObjectPoseObserver/ObjectPoseObserver.cpp          | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/source/RobotAPI/components/ObjectPoseObserver/ObjectPoseObserver.cpp b/source/RobotAPI/components/ObjectPoseObserver/ObjectPoseObserver.cpp
index b4da54f59..8ee8b789c 100644
--- a/source/RobotAPI/components/ObjectPoseObserver/ObjectPoseObserver.cpp
+++ b/source/RobotAPI/components/ObjectPoseObserver/ObjectPoseObserver.cpp
@@ -31,6 +31,7 @@
 #include <VirtualRobot/RobotConfig.h>
 
 #include <ArmarXCore/core/exceptions/local/UnexpectedEnumValueException.h>
+#include <ArmarXCore/observers/variant/Variant.h>
 
 #include <RobotAPI/libraries/core/Pose.h>
 #include <RobotAPI/libraries/core/FramedPose.h>
@@ -128,15 +129,18 @@ namespace armarx
                 if (robotHead.isMoving())
                 {
                     robotHead.movementStarts(robotHead.discardIntervalAfterMoveMS);
+                    robotHead.updateDebugObserverDatafields();
                     // ARMARX_IMPORTANT << "Ignoring pose update because robot head is moving! until " << robotHead.discardUpdatesUntil;
                     return;
                 }
                 if (TimeUtil::GetTime() < robotHead.discardUpdatesUntil)
                 {
                     // ARMARX_IMPORTANT << "Ignoring pose update because robot head is moved until: " << robotHead.discardUpdatesUntil;
+                    robotHead.updateDebugObserverDatafields();
                     return;
                 }
                 discardUpdatesUntil = robotHead.discardUpdatesUntil;
+                robotHead.updateDebugObserverDatafields();
             }
         }
         {
@@ -863,7 +867,6 @@ namespace armarx
     void ObjectPoseObserver::RobotHeadMovement::movementStarts(IceUtil::Time discardInterval)
     {
         discardUpdatesUntil = TimeUtil::GetTime() + discardInterval;
-        updateDebugObserverDatafields();
     }
     void ObjectPoseObserver::RobotHeadMovement::movementStops(long discardIntervalMs)
     {
@@ -881,7 +884,6 @@ namespace armarx
             // Basically the same as starting.
             discardUpdatesUntil = TimeUtil::GetTime() + discardInterval;
         }
-        updateDebugObserverDatafields();
     }
 
     void ObjectPoseObserver::RobotHeadMovement::updateDebugObserverDatafields()
@@ -890,8 +892,8 @@ namespace armarx
         {
             debugObserver->setDebugChannel(Logging::tag.tagName,
             {
-                { "DicardUpdatesUntilMs", new Variant(static_cast<int>(discardUpdatesUntil.toMilliSeconds())) },
-                { "NowMs", new Variant(static_cast<int>(TimeUtil::GetTime().toMilliSeconds())) },
+                { "DicardUpdatesUntilMs", new Variant(discardUpdatesUntil.toMilliSeconds()) },
+                { "NowMs", new Variant(TimeUtil::GetTime().toMilliSeconds()) },
             });
         }
     }
-- 
GitLab