From 291365b35f57e9be161bac2740f36697d3ad68e5 Mon Sep 17 00:00:00 2001 From: jvallve <jvallve@iri.upc.edu> Date: Mon, 25 Apr 2022 16:57:57 +0200 Subject: [PATCH] PT --- include/core/processor/processor_tracker.h | 43 ++++++++++++++++++---- 1 file changed, 35 insertions(+), 8 deletions(-) diff --git a/include/core/processor/processor_tracker.h b/include/core/processor/processor_tracker.h index f03ed4ea4..d93c9baa3 100644 --- a/include/core/processor/processor_tracker.h +++ b/include/core/processor/processor_tracker.h @@ -138,9 +138,12 @@ class ProcessorTracker : public ProcessorBase StateStructure getStateStructure() const; - virtual CaptureBasePtr getOrigin() const; - virtual CaptureBasePtr getLast() const; - virtual CaptureBasePtr getIncoming() const; + virtual CaptureBaseConstPtr getOrigin() const; + virtual CaptureBasePtr getOrigin(); + virtual CaptureBaseConstPtr getLast() const; + virtual CaptureBasePtr getLast(); + virtual CaptureBaseConstPtr getIncoming() const; + virtual CaptureBasePtr getIncoming(); protected: /** \brief process an incoming capture @@ -261,7 +264,8 @@ class ProcessorTracker : public ProcessorBase public: - FeatureBasePtrList& getNewFeaturesListLast(); + FeatureBaseConstPtrList getNewFeaturesListLast() const; + FeatureBasePtrList getNewFeaturesListLast(); std::string print() const { return this->params_tracker_->print(); @@ -286,7 +290,15 @@ class ProcessorTracker : public ProcessorBase }; -inline FeatureBasePtrList& ProcessorTracker::getNewFeaturesListLast() +inline FeatureBaseConstPtrList ProcessorTracker::getNewFeaturesListLast() const +{ + FeatureBaseConstPtrList list_const; + for (auto&& obj_ptr : new_features_last_) + list_const.push_back(obj_ptr); + return list_const; +} + +inline FeatureBasePtrList ProcessorTracker::getNewFeaturesListLast() { return new_features_last_; } @@ -311,17 +323,32 @@ inline void ProcessorTracker::addNewFeatureIncoming(FeatureBasePtr _feature_ptr) new_features_incoming_.push_back(_feature_ptr); } -inline CaptureBasePtr ProcessorTracker::getOrigin() const +inline CaptureBaseConstPtr ProcessorTracker::getOrigin() const +{ + return origin_ptr_; +} + +inline CaptureBasePtr ProcessorTracker::getOrigin() { return origin_ptr_; } -inline CaptureBasePtr ProcessorTracker::getLast() const +inline CaptureBaseConstPtr ProcessorTracker::getLast() const { return last_ptr_; } -inline CaptureBasePtr ProcessorTracker::getIncoming() const +inline CaptureBasePtr ProcessorTracker::getLast() +{ + return last_ptr_; +} + +inline CaptureBaseConstPtr ProcessorTracker::getIncoming() const +{ + return incoming_ptr_; +} + +inline CaptureBasePtr ProcessorTracker::getIncoming() { return incoming_ptr_; } -- GitLab