From 29962e6d5e3bcc2d32eb2d278b238b84438735ce Mon Sep 17 00:00:00 2001
From: Joan Sola <jsola@iri.upc.edu>
Date: Wed, 27 Apr 2022 22:03:55 +0200
Subject: [PATCH] Add TrackMatrix::trackIds() to get all track ids in the
 matrix

---
 include/core/processor/track_matrix.h |  2 ++
 src/processor/track_matrix.cpp        | 10 ++++++++++
 2 files changed, 12 insertions(+)

diff --git a/include/core/processor/track_matrix.h b/include/core/processor/track_matrix.h
index fa18d8313..e60a59f82 100644
--- a/include/core/processor/track_matrix.h
+++ b/include/core/processor/track_matrix.h
@@ -119,6 +119,8 @@ class TrackMatrix
         FeatureBasePtr  feature     (const SizeStd& _track_id, CaptureBasePtr _cap) const;
         CaptureBasePtr  firstCapture(const SizeStd& _track_id) const;
 
+        list<size_t>    trackIds() const;
+
         // tracks across captures that belong to keyframe
         Track           trackAtKeyframes(size_t _track_id) const;
 
diff --git a/src/processor/track_matrix.cpp b/src/processor/track_matrix.cpp
index 1830270b1..d7154a788 100644
--- a/src/processor/track_matrix.cpp
+++ b/src/processor/track_matrix.cpp
@@ -244,4 +244,14 @@ Track TrackMatrix::trackAtKeyframes(size_t _track_id) const
         return Track();
 }
 
+list<size_t> TrackMatrix::trackIds() const
+{
+    list<size_t> track_ids;
+    for (auto track : tracks_)
+    {
+        track_ids.push_back(track.first);
+    }
+    return track_ids;
+}
+
 }
-- 
GitLab