diff --git a/source/RobotAPI/libraries/armem_objects/client/articulated_object/ArticulatedObjectReader.cpp b/source/RobotAPI/libraries/armem_objects/client/articulated_object/ArticulatedObjectReader.cpp index f26a62736999d28a55001dbaee56d515c6cdd16c..c16ff257603b9fded0a5ea72737b92b40667fdb6 100644 --- a/source/RobotAPI/libraries/armem_objects/client/articulated_object/ArticulatedObjectReader.cpp +++ b/source/RobotAPI/libraries/armem_objects/client/articulated_object/ArticulatedObjectReader.cpp @@ -24,10 +24,11 @@ namespace armarx::armem::articulated_object { - VirtualRobot::RobotPtr ArticulatedObjectReader::getArticulatedObject(const std::string& name, + VirtualRobot::RobotPtr ArticulatedObjectReader::getArticulatedObject( + const std::string& name, const armem::Time& timestamp) { - const auto descriptions = queryDescriptions(IceUtil::Time::now()); + const auto descriptions = queryDescriptions(armem::Time::Now()); ARMARX_INFO << "Found " << descriptions.size() << " articulated object descriptions"; @@ -45,9 +46,9 @@ namespace armarx::armem::articulated_object ARMARX_DEBUG << "Object " << name << " available"; - auto obj = - VirtualRobot::RobotIO::loadRobot(ArmarXDataPath::resolvePath(it->xml.serialize().path), - VirtualRobot::RobotIO::eStructure); + auto obj = VirtualRobot::RobotIO::loadRobot( + ArmarXDataPath::resolvePath(it->xml.serialize().path), + VirtualRobot::RobotIO::eStructure); if (not obj) { diff --git a/source/RobotAPI/libraries/armem_objects/client/articulated_object/ArticulatedObjectReader.h b/source/RobotAPI/libraries/armem_objects/client/articulated_object/ArticulatedObjectReader.h index 5d918ddf474bfb110afaede2c4ce765ae446e931..65e8f2fba2ba962429e040e1d0e1eefc514e2355 100644 --- a/source/RobotAPI/libraries/armem_objects/client/articulated_object/ArticulatedObjectReader.h +++ b/source/RobotAPI/libraries/armem_objects/client/articulated_object/ArticulatedObjectReader.h @@ -10,7 +10,8 @@ namespace armarx::armem::articulated_object public: using Reader::Reader; - VirtualRobot::RobotPtr getArticulatedObject(const std::string& name, + VirtualRobot::RobotPtr getArticulatedObject( + const std::string& name, const armem::Time& timestamp); }; } // namespace armarx::armem::articulated_object diff --git a/source/RobotAPI/libraries/armem_objects/client/articulated_object/ArticulatedObjectWriter.cpp b/source/RobotAPI/libraries/armem_objects/client/articulated_object/ArticulatedObjectWriter.cpp index 8caad31be27b227a8df1eb482f568ccf023b0f33..6cbb3ecdcfee0334df79a9d6728080c5bce55f5f 100644 --- a/source/RobotAPI/libraries/armem_objects/client/articulated_object/ArticulatedObjectWriter.cpp +++ b/source/RobotAPI/libraries/armem_objects/client/articulated_object/ArticulatedObjectWriter.cpp @@ -12,7 +12,8 @@ namespace armarx::armem::articulated_object { - armem::articulated_object::ArticulatedObject convert(const VirtualRobot::Robot& obj, + armem::articulated_object::ArticulatedObject convert( + const VirtualRobot::Robot& obj, const armem::Time& timestamp) { ARMARX_DEBUG << "Filename is " << obj.getFilename(); @@ -37,14 +38,15 @@ namespace armarx::armem::articulated_object } bool - ArticulatedObjectWriter::storeArticulatedObject(const VirtualRobot::RobotPtr& articulatedObject, + ArticulatedObjectWriter::storeArticulatedObject( + const VirtualRobot::RobotPtr& articulatedObject, const armem::Time& timestamp) { ARMARX_CHECK_NOT_NULL(articulatedObject); armarx::armem::articulated_object::ArticulatedObject armemArticulatedObject = - convert(*articulatedObject, IceUtil::Time::now()); + convert(*articulatedObject, Time::Now()); return store(armemArticulatedObject); } diff --git a/source/RobotAPI/libraries/armem_objects/client/articulated_object/Writer.cpp b/source/RobotAPI/libraries/armem_objects/client/articulated_object/Writer.cpp index 05506152012d6527110801adb5bfe5b015a42d1b..fbce08b6323e1a1235bd000aadbd4e73ff6cbf8c 100644 --- a/source/RobotAPI/libraries/armem_objects/client/articulated_object/Writer.cpp +++ b/source/RobotAPI/libraries/armem_objects/client/articulated_object/Writer.cpp @@ -97,7 +97,7 @@ namespace armarx::armem::articulated_object void Writer::updateKnownObjects() { - knownObjects = queryDescriptions(IceUtil::Time::now()); + knownObjects = queryDescriptions(Time::Now()); ARMARX_INFO << "Known articulated objects " << simox::alg::get_keys(knownObjects); } diff --git a/source/RobotAPI/libraries/armem_objects/client/instance/ObjectWriter.cpp b/source/RobotAPI/libraries/armem_objects/client/instance/ObjectWriter.cpp index ad9c8c83f2ca8889292c8a2023a74fd54528e04a..84b1e4613b8b4bbe8a72938949d503276500e407 100644 --- a/source/RobotAPI/libraries/armem_objects/client/instance/ObjectWriter.cpp +++ b/source/RobotAPI/libraries/armem_objects/client/instance/ObjectWriter.cpp @@ -65,7 +65,7 @@ namespace armarx::armem::obj::instance e.entityID.providerSegmentName = provider; e.entityID.entityName = inst.pose.objectID.dataset + "/" + inst.pose.objectID.className + "/" + inst.pose.objectID.instanceName; e.timeCreated = t; - e.timeSent = IceUtil::Time::now(); + e.timeSent = armem::Time::Now(); e.instancesData = { inst.toAron() }; auto res = memoryWriter.commit(c); diff --git a/source/RobotAPI/libraries/armem_objects/server/class/Segment.cpp b/source/RobotAPI/libraries/armem_objects/server/class/Segment.cpp index a0e9bce51558d7fb39caf50a331919dc16034793..3250a1cca34d47df08e4d9218c0bfeda729163b0 100644 --- a/source/RobotAPI/libraries/armem_objects/server/class/Segment.cpp +++ b/source/RobotAPI/libraries/armem_objects/server/class/Segment.cpp @@ -79,7 +79,7 @@ namespace armarx::armem::server::obj::clazz void Segment::loadByObjectFinder() { - const Time now = TimeUtil::GetTime(); + const Time now = Time::Now(); const bool checkPaths = false; std::vector<ObjectInfo> infos = objectFinder.findAllObjects(checkPaths); diff --git a/source/RobotAPI/libraries/armem_objects/server/instance/Decay.cpp b/source/RobotAPI/libraries/armem_objects/server/instance/Decay.cpp index df3728fb3bbc6149fb329e60a3a94083caa6a441..ac072e19693c213989cd5f6fc8acfb3de1cc8380 100644 --- a/source/RobotAPI/libraries/armem_objects/server/instance/Decay.cpp +++ b/source/RobotAPI/libraries/armem_objects/server/instance/Decay.cpp @@ -3,6 +3,7 @@ #include <SimoxUtility/math/scale_value.h> #include <ArmarXCore/core/time/TimeUtil.h> +#include <ArmarXCore/core/time/DateTime.h> namespace armarx::armem::server::obj::instance @@ -24,7 +25,7 @@ namespace armarx::armem::server::obj::instance "Remove objects whose confidence is lower than this value."); } - void Decay::updateConfidence(objpose::ObjectPose& pose, IceUtil::Time now) const + void Decay::updateConfidence(objpose::ObjectPose& pose, const DateTime& now) const { if (pose.attachment or pose.isStatic) { @@ -36,7 +37,7 @@ namespace armarx::armem::server::obj::instance } } - void Decay::updateConfidences(objpose::ObjectPoseSeq& objectPoses, IceUtil::Time now) const + void Decay::updateConfidences(objpose::ObjectPoseSeq& objectPoses, const DateTime& now) const { for (objpose::ObjectPose& pose : objectPoses) { @@ -44,7 +45,7 @@ namespace armarx::armem::server::obj::instance } } - float Decay::calculateConfidence(IceUtil::Time localization, IceUtil::Time now) const + float Decay::calculateConfidence(const DateTime& localization, const DateTime& now) const { const float duration = static_cast<float>((now - localization).toSecondsDouble()); if (duration < delaySeconds) diff --git a/source/RobotAPI/libraries/armem_objects/server/instance/Decay.h b/source/RobotAPI/libraries/armem_objects/server/instance/Decay.h index a44652d5528bceefed921dec184fe8b87fd19bfe..4adf757da588b0c0525a526e70ccd707f95de9a2 100644 --- a/source/RobotAPI/libraries/armem_objects/server/instance/Decay.h +++ b/source/RobotAPI/libraries/armem_objects/server/instance/Decay.h @@ -1,9 +1,8 @@ #pragma once -#include <IceUtil/Time.h> - #include <ArmarXCore/core/logging/Logging.h> #include <ArmarXCore/core/services/tasks/TaskUtil.h> +#include <ArmarXCore/core/time/forward_declarations.h> #include <ArmarXGui/libraries/RemoteGui/Client/Widgets.h> @@ -23,12 +22,12 @@ namespace armarx::armem::server::obj::instance void defineProperties(armarx::PropertyDefinitionsPtr defs, const std::string& prefix = "decay."); - void updateConfidence(objpose::ObjectPose& pose, IceUtil::Time now) const; - void updateConfidences(objpose::ObjectPoseSeq& objectPoses, IceUtil::Time now) const; + void updateConfidence(objpose::ObjectPose& pose, const DateTime& now) const; + void updateConfidences(objpose::ObjectPoseSeq& objectPoses, const DateTime& now) const; private: - float calculateConfidence(IceUtil::Time localization, IceUtil::Time now) const; + float calculateConfidence(const DateTime& localization, const DateTime& now) const; public: diff --git a/source/RobotAPI/libraries/armem_objects/server/instance/RobotHeadMovement.cpp b/source/RobotAPI/libraries/armem_objects/server/instance/RobotHeadMovement.cpp index 973cf5a551228705b918560ad48648db5795ab1f..d1a6c91672c595f2ceba9fa5840f30347d586fff 100644 --- a/source/RobotAPI/libraries/armem_objects/server/instance/RobotHeadMovement.cpp +++ b/source/RobotAPI/libraries/armem_objects/server/instance/RobotHeadMovement.cpp @@ -74,27 +74,27 @@ namespace armarx::armem::server::obj::instance void RobotHeadMovement::movementStarts(long discardIntervalMs) { - return movementStarts(IceUtil::Time::milliSeconds(discardIntervalMs)); + return movementStarts(Duration::MilliSeconds(discardIntervalMs)); } - void RobotHeadMovement::movementStarts(IceUtil::Time discardInterval) + void RobotHeadMovement::movementStarts(const Duration& discardInterval) { - discardUpdatesUntil = TimeUtil::GetTime() + discardInterval; + discardUpdatesUntil = DateTime::Now() + discardInterval; } void RobotHeadMovement::movementStops(long discardIntervalMs) { - return movementStops(IceUtil::Time::milliSeconds(discardIntervalMs)); + return movementStops(Duration::MilliSeconds(discardIntervalMs)); } - void RobotHeadMovement::movementStops(IceUtil::Time discardInterval) + void RobotHeadMovement::movementStops(const Duration& discardInterval) { if (discardInterval.toMilliSeconds() < 0) { // Stop discarding. - discardUpdatesUntil = IceUtil::Time::milliSeconds(-1); + discardUpdatesUntil = DateTime::Invalid(); } else { // Basically the same as starting. - discardUpdatesUntil = TimeUtil::GetTime() + discardInterval; + discardUpdatesUntil = DateTime::Now() + discardInterval; } } @@ -115,7 +115,7 @@ namespace armarx::armem::server::obj::instance ARMARX_UNEXPECTED_ENUM_VALUE(objpose::HeadMovementAction, input.action); break; } - output.discardUpdatesUntilMilliSeconds = this->discardUpdatesUntil.toMilliSeconds(); + output.discardUpdatesUntilMilliSeconds = this->discardUpdatesUntil.toMilliSecondsSinceEpoch(); return output; } @@ -131,7 +131,7 @@ namespace armarx::armem::server::obj::instance // ARMARX_IMPORTANT << "Ignoring pose update because robot head is moving! until " << discardUpdatesUntil; discard.all = true; } - else if (TimeUtil::GetTime() < discardUpdatesUntil) + else if (DateTime::Now() < discardUpdatesUntil) { discard.all = true; // ARMARX_IMPORTANT << "Ignoring pose update because robot head has moved until: " << discardUpdatesUntil; diff --git a/source/RobotAPI/libraries/armem_objects/server/instance/RobotHeadMovement.h b/source/RobotAPI/libraries/armem_objects/server/instance/RobotHeadMovement.h index b6b0acb6da46d593f2da2677e9e7258ce6d7e0c2..b4da82e8239494f191cad7a1da79c39585f4b13d 100644 --- a/source/RobotAPI/libraries/armem_objects/server/instance/RobotHeadMovement.h +++ b/source/RobotAPI/libraries/armem_objects/server/instance/RobotHeadMovement.h @@ -4,10 +4,9 @@ #include <vector> #include <optional> -#include <IceUtil/Time.h> - #include <ArmarXCore/interface/observers/ObserverInterface.h> #include <ArmarXCore/core/logging/Logging.h> +#include <ArmarXCore/core/time/DateTime.h> #include <ArmarXCore/observers/variant/DatafieldRef.h> #include <ArmarXGui/libraries/RemoteGui/Client/Widgets.h> @@ -34,16 +33,16 @@ namespace armarx::armem::server::obj::instance bool isMoving() const; void movementStarts(long discardIntervalMs); - void movementStarts(IceUtil::Time discardInterval); + void movementStarts(const Duration& discardInterval); void movementStops(long discardIntervalMs); - void movementStops(IceUtil::Time discardInterval); + void movementStops(const Duration& discardInterval); objpose::SignalHeadMovementOutput signalHeadMovement(const objpose::SignalHeadMovementInput& input); struct Discard { - std::optional<IceUtil::Time> updatesUntil; + std::optional<DateTime> updatesUntil; bool all = false; }; Discard getDiscard(); @@ -60,7 +59,7 @@ namespace armarx::armem::server::obj::instance KinematicUnitObserverInterfacePrx kinematicUnitObserver; std::vector<DatafieldRefPtr> jointVelocitiesDatafields; - IceUtil::Time discardUpdatesUntil = IceUtil::Time::seconds(-1); + DateTime discardUpdatesUntil = DateTime::Invalid(); DebugObserverInterfacePrx debugObserver; diff --git a/source/RobotAPI/libraries/armem_objects/server/instance/Segment.cpp b/source/RobotAPI/libraries/armem_objects/server/instance/Segment.cpp index 351d0f5ac4ef71a4e2af10a460bb796e227370f5..4d0218e58b3dcbf27a9b4aec2fe408301ad64c7d 100644 --- a/source/RobotAPI/libraries/armem_objects/server/instance/Segment.cpp +++ b/source/RobotAPI/libraries/armem_objects/server/instance/Segment.cpp @@ -29,21 +29,19 @@ #include <ArmarXCore/core/logging/Logging.h> #include <ArmarXCore/core/system/cmake/CMakePackageFinder.h> -#include <ArmarXCore/core/time/TimeUtil.h> +#include <ArmarXCore/core/time/DateTime.h> +#include <ArmarXCore/core/time/ice_conversions.h> #include <SimoxUtility/algorithm/get_map_keys_values.h> #include <SimoxUtility/algorithm/string.h> #include <SimoxUtility/json.h> #include <SimoxUtility/math/pose/pose.h> - #include <Eigen/Geometry> -#include <IceUtil/Time.h> #include <sstream> - namespace armarx::armem::server::obj::instance { @@ -148,7 +146,7 @@ namespace armarx::armem::server::obj::instance stats.numUpdated = 0; for (const objpose::data::ProvidedObjectPose& provided : providedPoses) { - const Time timestamp = Time::microSeconds(provided.timestampMicroSeconds); + const Time timestamp = fromIce<Time>(provided.timestamp); // Check whether we have an old snapshot for this object. std::optional<objpose::ObjectPose> previousPose; @@ -230,7 +228,7 @@ namespace armarx::armem::server::obj::instance void Segment::commitObjectPoses(const ObjectPoseSeq& objectPoses, const std::string& providerName) { - Time now = TimeUtil::GetTime(); + Time now = Time::Now(); ARMARX_CHECK_NOT_NULL(segmentPtr); const MemoryID coreSegmentID = segmentPtr->id(); @@ -269,7 +267,7 @@ namespace armarx::armem::server::obj::instance objpose::ObjectPoseMap - Segment::getObjectPoses(IceUtil::Time now) + Segment::getObjectPoses(const DateTime& now) { ObjectPoseMap objectPoses = getLatestObjectPoses(); updateObjectPoses(objectPoses, now); @@ -281,7 +279,7 @@ namespace armarx::armem::server::obj::instance objpose::ObjectPoseMap Segment::getObjectPosesByProvider( const std::string& providerName, - IceUtil::Time now) + const DateTime& now) { ARMARX_CHECK_NOT_NULL(segmentPtr); ObjectPoseMap objectPoses = getLatestObjectPoses(segmentPtr->getProviderSegment(providerName)); @@ -325,7 +323,7 @@ namespace armarx::armem::server::obj::instance } - void Segment::updateObjectPoses(ObjectPoseMap& objectPoses, IceUtil::Time now) + void Segment::updateObjectPoses(ObjectPoseMap& objectPoses, const DateTime& now) { bool agentSynchronized = false; @@ -338,7 +336,7 @@ namespace armarx::armem::server::obj::instance void Segment::updateObjectPoses( ObjectPoseMap& objectPoses, - IceUtil::Time now, + const DateTime& now, VirtualRobot::RobotPtr agent, bool& agentSynchronized) const { @@ -351,7 +349,7 @@ namespace armarx::armem::server::obj::instance void Segment::updateObjectPose( ObjectPose& objectPose, - IceUtil::Time now, + const DateTime& now, VirtualRobot::RobotPtr agent, bool& agentSynchronized) const { @@ -493,7 +491,7 @@ namespace armarx::armem::server::obj::instance ::armarx::armem::articulated_object::ArticulatedObjects Segment::getArticulatedObjects() { - objpose::ObjectPoseMap objectPoses = getObjectPoses(IceUtil::Time::now()); + objpose::ObjectPoseMap objectPoses = getObjectPoses(Time::Now()); ARMARX_INFO << "Found " << objectPoses.size() << " object poses"; @@ -507,7 +505,6 @@ namespace armarx::armem::server::obj::instance articulatedObject.instance = objectPose.objectID.instanceName(); articulatedObject.timestamp = objectPose.timestamp; - ARMARX_INFO << "Object id is " << objectId.str(); ARMARX_INFO << "Object id for objectPose is " << objectPose.objectID.str(); @@ -537,8 +534,6 @@ namespace armarx::armem::server::obj::instance continue; } - - if (not articulatedObject.config.jointMap.empty()) { objects.push_back(articulatedObject); @@ -578,7 +573,7 @@ namespace armarx::armem::server::obj::instance objpose::AttachObjectToRobotNodeOutput Segment::attachObjectToRobotNode(const objpose::AttachObjectToRobotNodeInput& input) { - const armem::Time now = armem::Time::now(); + const armem::Time now = armem::Time::Now(); objpose::AttachObjectToRobotNodeOutput output; output.success = false; // We are not successful until proven otherwise. @@ -670,7 +665,7 @@ namespace armarx::armem::server::obj::instance Segment::detachObjectFromRobotNode( const objpose::DetachObjectFromRobotNodeInput& input) { - const armem::Time now = armem::Time::now(); + const armem::Time now = armem::Time::Now(); ObjectID objectID = armarx::fromIce(input.objectID); std::string providerName = input.providerName; @@ -720,7 +715,7 @@ namespace armarx::armem::server::obj::instance { ARMARX_CHECK_NOT_NULL(segmentPtr); - const armem::Time now = armem::Time::now(); + const armem::Time now = armem::Time::Now(); objpose::DetachAllObjectsFromRobotNodesOutput output; output.numDetached = 0; @@ -867,7 +862,7 @@ namespace armarx::armem::server::obj::instance std::string filename = _filename; filename = simox::alg::replace_all(filename, timestampPlaceholder, - Time::now().toString("%Y-%m-%d_%H-%M-%S")); + Time::Now().toString("%Y-%m-%d_%H-%M-%S")); if (not simox::alg::ends_with(filename, ".json")) { filename += ".json"; @@ -925,7 +920,7 @@ namespace armarx::armem::server::obj::instance void Segment::commitSceneSnapshot(const armarx::objects::Scene& scene, const std::string& sceneName) { - const Time now = TimeUtil::GetTime(); + const Time now = Time::Now(); std::map<ObjectID, int> idCounters; objpose::ObjectPoseSeq objectPoses; diff --git a/source/RobotAPI/libraries/armem_objects/server/instance/Segment.h b/source/RobotAPI/libraries/armem_objects/server/instance/Segment.h index 24f80704f8580c386bfaf346502cccd9fa86c1c6..da97aac841559b845fb308e93ac572739efb7c3c 100644 --- a/source/RobotAPI/libraries/armem_objects/server/instance/Segment.h +++ b/source/RobotAPI/libraries/armem_objects/server/instance/Segment.h @@ -16,6 +16,7 @@ #include <RobotAPI/libraries/ArmarXObjects/ObjectID.h> #include <RobotAPI/libraries/ArmarXObjects/ObjectPose.h> #include <RobotAPI/libraries/ArmarXObjects/ObjectFinder.h> +#include <RobotAPI/libraries/ArmarXObjects/forward_declarations.h> #include <RobotAPI/libraries/armem/server/wm/memory_definitions.h> #include <RobotAPI/libraries/armem/server/segment/SpecializedSegment.h> @@ -24,10 +25,6 @@ #include "Decay.h" -namespace armarx::objects -{ - struct Scene; -} namespace armarx::armem::arondto { class ObjectInstance; @@ -68,8 +65,8 @@ namespace armarx::armem::server::obj::instance void commitObjectPoses(const ObjectPoseSeq& objectPoses, const std::string& providerName = ""); - objpose::ObjectPoseMap getObjectPoses(IceUtil::Time now); - objpose::ObjectPoseMap getObjectPosesByProvider(const std::string& providerName, IceUtil::Time now); + objpose::ObjectPoseMap getObjectPoses(const DateTime& now); + objpose::ObjectPoseMap getObjectPosesByProvider(const std::string& providerName, const DateTime& now); wm::Entity* findObjectEntity(const ObjectID& objectID, const std::string& providerName = ""); std::optional<simox::OrientedBoxf> getObjectOOBB(const ObjectID& id); @@ -115,16 +112,16 @@ namespace armarx::armem::server::obj::instance void updateObjectPoses( ObjectPoseMap& objectPoses, - IceUtil::Time now); + const DateTime& now); void updateObjectPoses( ObjectPoseMap& objectPoses, - IceUtil::Time now, + const DateTime& now, VirtualRobot::RobotPtr agent, bool& agentSynchronized ) const; void updateObjectPose( ObjectPose& objectPose, - IceUtil::Time now, + const DateTime& now, VirtualRobot::RobotPtr agent, bool& agentSynchronized ) const; diff --git a/source/RobotAPI/libraries/armem_objects/server/instance/SegmentAdapter.cpp b/source/RobotAPI/libraries/armem_objects/server/instance/SegmentAdapter.cpp index ef00638e9ed76d0bbe05de3ab6af98f3687fe9d7..b7f7a63085b31cb3672ad6c0307fc5afe2096c4e 100644 --- a/source/RobotAPI/libraries/armem_objects/server/instance/SegmentAdapter.cpp +++ b/source/RobotAPI/libraries/armem_objects/server/instance/SegmentAdapter.cpp @@ -218,7 +218,7 @@ namespace armarx::armem::server::obj::instance { TIMING_START(tGetObjectPoses); - const IceUtil::Time now = TimeUtil::GetTime(); + const Time now = Time::Now(); const objpose::ObjectPoseSeq objectPoses = segment.doLocked([this, &now]() { return simox::alg::get_values(segment.getObjectPoses(now)); @@ -242,7 +242,7 @@ namespace armarx::armem::server::obj::instance { TIMING_START(GetObjectPoses); - const IceUtil::Time now = TimeUtil::GetTime(); + const Time now = Time::Now(); const objpose::ObjectPoseSeq objectPoses = segment.doLocked([this, &now, &providerName]() { return simox::alg::get_values(segment.getObjectPosesByProvider(providerName, now)); @@ -451,7 +451,7 @@ namespace armarx::armem::server::obj::instance segment.doLocked([this, &objectPoses, &objectFinder]() { - const IceUtil::Time now = TimeUtil::GetTime(); + const Time now = Time::Now(); // Also include decayed objects in result // Store original setting.