From df3776e795086a973814a78c4101fc7bb89e2312 Mon Sep 17 00:00:00 2001
From: Sergi Pujol <sergi.pujol.badell@estudiantat.upc.edu>
Date: Mon, 15 Feb 2021 15:10:13 +0100
Subject: [PATCH] added match_loop_closure struct

---
 src/loop_closure_falko.h |  2 +-
 src/match_loop_closure.h | 16 ++++++++++++++--
 src/scene_falko.h        |  2 +-
 3 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/src/loop_closure_falko.h b/src/loop_closure_falko.h
index b9b6c27..bd3336a 100644
--- a/src/loop_closure_falko.h
+++ b/src/loop_closure_falko.h
@@ -52,7 +52,7 @@ private:
 public:
 
     typedef std::shared_ptr<sceneFalko<D>> sceneFalkoBSCPtr;
-    typedef std::shared_ptr<matchLoopClosure> matchLoopClosurePtr;
+    typedef std::shared_ptr<matchLoopClosure<D>> matchLoopClosurePtr;
 
     Extr extractor_;
     M matcher_;
diff --git a/src/match_loop_closure.h b/src/match_loop_closure.h
index 21ce891..57fb6e8 100644
--- a/src/match_loop_closure.h
+++ b/src/match_loop_closure.h
@@ -10,14 +10,26 @@
 
 #include <iostream>
 #include <fstream>
+#include <memory>
 
+/**************************
+ *      laser_scan_utils includes     *
+ **************************/
+#include "scene_falko.h"
 
 namespace laserscanutils
 {
 
+template <typename D>
 struct matchLoopClosure{
-    //std::vector<falkolib::FALKO> keypointsList;
-    //std::vector<D> descriptorsList;
+    //std::shared_ptr<sceneFalko<D>> scene1;
+    //std::shared_ptr<sceneFalko<D>> scene2;
+    // tuple that stores the pointers of two matched scenes
+    std::tuple<std::shared_ptr<sceneFalko<D>>, std::shared_ptr<sceneFalko<D>>> sceneTuple;
+    bool match;
+    int keypointsNumberMatch;
+    double score;
+
 };
 
 
diff --git a/src/scene_falko.h b/src/scene_falko.h
index 65b7253..9d041f8 100644
--- a/src/scene_falko.h
+++ b/src/scene_falko.h
@@ -40,7 +40,7 @@ struct sceneFalko : public sceneBase{
     std::vector<D> descriptorsList;
 };
 
-typedef std::shared_ptr<sceneFalko<falkolib::BSC>> sceneFalkoBSCPtr;
+
 
 
 } /* namespace laserscanutils */
-- 
GitLab