From d49c8f8ecd55f3976a6f829ddb9457ebbd0bcafe Mon Sep 17 00:00:00 2001 From: Markus Grotz <markus.grotz@kit.edu> Date: Tue, 7 Jun 2016 12:09:48 +0200 Subject: [PATCH] filtered saliency maps by time --- .../ViewSelection/ViewSelection.cpp | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/source/RobotAPI/components/ViewSelection/ViewSelection.cpp b/source/RobotAPI/components/ViewSelection/ViewSelection.cpp index 34c80fd1f..4ee7ad2dd 100644 --- a/source/RobotAPI/components/ViewSelection/ViewSelection.cpp +++ b/source/RobotAPI/components/ViewSelection/ViewSelection.cpp @@ -140,6 +140,30 @@ void ViewSelection::onExitComponent() ViewTargetBasePtr ViewSelection::nextAutomaticViewTarget() { + IceUtil::Time currentTime = armarx::TimeUtil::GetTime(); + std::vector<std::string> activeSaliencyMaps; + for (const auto & p : saliencyMaps) + { + if (p.second->validUntil) + { + TimestampVariantPtr time = TimestampVariantPtr::dynamicCast(p.second->validUntil); + if (time->toTime() > currentTime) + { + activeSaliencyMaps.push_back(p.second->name); + } + } + else + { + activeSaliencyMaps.push_back(p.second->name); + } + + } + + if (activeSaliencyMaps.empty()) + { + return nullptr; + } + SharedRobotInterfacePrx robotPrx = robotStateComponent->getSynchronizedRobot(); TNodeList* visibilityMaskGraphNodes = visibilityMaskGraph->getNodes(); -- GitLab