From 901ed6053eaf2d65639db2b5941c5bcef153b712 Mon Sep 17 00:00:00 2001 From: Anton Arbring Date: Thu, 25 Jun 2015 20:08:35 -0400 Subject: [PATCH] Adding support for imageplanes for multiple instruments --- modules/newhorizons/util/imagesequencer2.cpp | 14 +++++++++----- modules/newhorizons/util/imagesequencer2.h | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/modules/newhorizons/util/imagesequencer2.cpp b/modules/newhorizons/util/imagesequencer2.cpp index aea8dd4238..812b9ce9cd 100644 --- a/modules/newhorizons/util/imagesequencer2.cpp +++ b/modules/newhorizons/util/imagesequencer2.cpp @@ -46,8 +46,7 @@ namespace openspace { ImageSequencer2* ImageSequencer2::_instance = nullptr; ImageSequencer2::ImageSequencer2() - : _latestImage() - , _hasData(false) + : _hasData(false) {} ImageSequencer2& ImageSequencer2::ref() { @@ -161,8 +160,13 @@ double ImageSequencer2::getNextCaptureTime(){ return nextCaptureTime; } const Image ImageSequencer2::getLatestImageForInstrument(const std::string _instrumentID){ - - return _latestImage; + auto it = _latestImages.find(_instrumentID); + if (it != _latestImages.end()) + return _latestImages[_instrumentID]; + else { + Image dummyImage = { 0, 0, "", std::vector(), "", false }; + return dummyImage; + } } std::map ImageSequencer2::getActiveInstruments(){ @@ -270,7 +274,7 @@ bool ImageSequencer2::getImagePaths(std::vector& captures, std::reverse(captureTimes.begin(), captureTimes.end()); captures = captureTimes; if (!captures.empty()) - _latestImage = captures.back(); + _latestImages[captures.back().activeInstruments.front()] = captures.back(); return true; } diff --git a/modules/newhorizons/util/imagesequencer2.h b/modules/newhorizons/util/imagesequencer2.h index 0a30437740..722a37e86b 100644 --- a/modules/newhorizons/util/imagesequencer2.h +++ b/modules/newhorizons/util/imagesequencer2.h @@ -196,7 +196,7 @@ private: // default capture image std::string _defaultCaptureImage; - Image _latestImage; + std::map _latestImages; // if no data, no run bool _hasData; };