diff --git a/radio/metrics/Tracker.cpp b/radio/metrics/Tracker.cpp index 80db30f..1450816 100644 --- a/radio/metrics/Tracker.cpp +++ b/radio/metrics/Tracker.cpp @@ -13,6 +13,7 @@ Tracker::Tracker(RealScalar rho, RealScalar smoothness) : m_mags(NUM_QUADRRANTS) , m_rho(rho) , m_smoothness(smoothness) +, m_trackers(NUM_QUADRRANTS) { m_mags = 0; } @@ -21,7 +22,13 @@ Tracker::~Tracker() { } -ComplexScalar const* Tracker::trackers() const +void Tracker::reset() +{ + m_mags = 0; + m_trackers = 0; +} + +CVec Tracker::trackers() const { return m_trackers; } diff --git a/radio/metrics/Tracker.hpp b/radio/metrics/Tracker.hpp index 68dd5bd..41126ee 100644 --- a/radio/metrics/Tracker.hpp +++ b/radio/metrics/Tracker.hpp @@ -18,14 +18,14 @@ public: Tracker(RealScalar rho, RealScalar smoothness=0.5); virtual ~Tracker(); void process(ComplexScalar const &x); - ComplexScalar const* trackers() const; - + CVec trackers() const; + void reset(); private: RVec m_mags; RealScalar m_rho; RealScalar m_smoothness; - ComplexScalar m_trackers[NUM_QUADRRANTS]; + CVec m_trackers; size_t getQuadrant(ComplexScalar const &x); };