From b9b188693d906a2c76a0140337307046e00e6352 Mon Sep 17 00:00:00 2001
From: PierreGtch <pierre.guetschel@gmail.com>
Date: Tue, 18 Jun 2019 14:42:53 +0200
Subject: [PATCH] ProcessorLoopClosureBase : manipulate captures instead of
 frames

---
 include/core/processor/processor_loopclosure_base.h |  6 +++---
 src/processor/processor_loopclosure_base.cpp        | 10 +++++-----
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/include/core/processor/processor_loopclosure_base.h b/include/core/processor/processor_loopclosure_base.h
index c96dba19f..151e7def9 100644
--- a/include/core/processor/processor_loopclosure_base.h
+++ b/include/core/processor/processor_loopclosure_base.h
@@ -96,19 +96,19 @@ protected:
      * if validateLoop is not overwritten, a loop will be closed with the returned candidate
      * if no good candidate is found, return nullptr
      */
-    virtual FrameBasePtr findLoopCandidate(FrameBasePtr _key_frame) = 0;
+    virtual CaptureBasePtr findLoopCandidate(CaptureBasePtr _capture) = 0;
 
     /** \brief validate/discard a loop closure
      *
      * overwrite it if you want an additional test after findLoopCandidate()
      */
-    bool validateLoop(FrameBasePtr _key_frame_1, FrameBasePtr _key_frame_2) {return true;};
+    bool validateLoop(CaptureBasePtr _capture_1, CaptureBasePtr _capture_2) {return true;};
 
     /** \brief create the factor(s)
      *
      * overwrite it if needed
      */
-    virtual void createFactors(FrameBasePtr _key_frame_1, FrameBasePtr _key_frame_2) = 0;
+    virtual void createFactors(CaptureBasePtr _capture_1, CaptureBasePtr _capture_2) = 0;
 
 
     /** Pre-process incoming Capture
diff --git a/src/processor/processor_loopclosure_base.cpp b/src/processor/processor_loopclosure_base.cpp
index 422075c92..f981cb0ab 100644
--- a/src/processor/processor_loopclosure_base.cpp
+++ b/src/processor/processor_loopclosure_base.cpp
@@ -32,11 +32,11 @@ void ProcessorLoopClosureBase::process(CaptureBasePtr _incoming_ptr)
 
         if (voteSearchLoopClosure(_incoming_ptr))
         {
-            FrameBasePtr key_frame_1 = pairKC.first;
-            FrameBasePtr key_frame_2 = findLoopCandidate(key_frame_1);
-            if (key_frame_2==nullptr) return;
-            if (validateLoop(key_frame_1, key_frame_2)==false) return;
-            createFactors(key_frame_1, key_frame_2);
+            CaptureBasePtr capture_1 = pairKC.second;
+            CaptureBasePtr capture_2 = findLoopCandidate(capture_1);
+            if (capture_2==nullptr) return;
+            if (validateLoop(capture_1, capture_2)==false) return;
+            createFactors(capture_1, capture_2);
         };
     };
 
-- 
GitLab