diff --git a/src/hello_wolf/processor_range_bearing.cpp b/src/hello_wolf/processor_range_bearing.cpp
index 3991741d59036ae0fb476e0edbca531866ff5d78..cb17c8a8a7713b2c394084f8bfea20b307e13583 100644
--- a/src/hello_wolf/processor_range_bearing.cpp
+++ b/src/hello_wolf/processor_range_bearing.cpp
@@ -149,9 +149,9 @@ Eigen::Vector2s ProcessorRangeBearing::polar(const Eigen::Vector2s& rect) const
     return polar;
 }
 
-bool ProcessorRangeBearing::keyFrameCallback(FrameBasePtr _key_frame, const Scalar& _time_tolerance)
+void ProcessorRangeBearing::keyFrameCallback(FrameBasePtr _key_frame, const Scalar& _time_tolerance)
 {
-    return true;
+    //
 }
 
 Eigen::Vector2s ProcessorRangeBearing::rect(Scalar range, Scalar bearing) const
diff --git a/src/hello_wolf/processor_range_bearing.h b/src/hello_wolf/processor_range_bearing.h
index d21f59052da4ff6c10f05feec483f8c34e8c8ce6..0706bc145f732176ba89da29a8904590aafce149 100644
--- a/src/hello_wolf/processor_range_bearing.h
+++ b/src/hello_wolf/processor_range_bearing.h
@@ -45,7 +45,7 @@ class ProcessorRangeBearing : public ProcessorBase
         // Implementation of pure virtuals from ProcessorBase
         virtual void process            (CaptureBasePtr _capture) override;
         virtual bool voteForKeyFrame    () override {return false;}
-        virtual bool keyFrameCallback   (FrameBasePtr _key_frame, const Scalar& _time_tolerance) ;
+        virtual void keyFrameCallback   (FrameBasePtr _key_frame, const Scalar& _time_tolerance) override;
 
         // landmark observation models -- they would be better off in a separate library e.g. range_bearing_tools.h
         Eigen::Vector2s observe     (const Eigen::Vector2s& lmk_w) const;
diff --git a/src/processor_base.h b/src/processor_base.h
index 0d10721f910fd04a119c6864ee50f285ea75d258..c8b6f7381f9f96b5278908566eb0cb88eb8046c6 100644
--- a/src/processor_base.h
+++ b/src/processor_base.h
@@ -164,7 +164,7 @@ class ProcessorBase : public NodeBase, public std::enable_shared_from_this<Proce
          */
         FrameBasePtr emplaceFrame(FrameType _type, CaptureBasePtr _capture_ptr, const Eigen::VectorXs& _state);
 
-        void keyFrameCallback(FrameBasePtr _keyframe_ptr, const Scalar& _time_tol_other);
+        virtual void keyFrameCallback(FrameBasePtr _keyframe_ptr, const Scalar& _time_tol_other);
 
         SensorBasePtr getSensorPtr();
         const SensorBasePtr getSensorPtr() const;
diff --git a/src/processor_capture_holder.cpp b/src/processor_capture_holder.cpp
index 299b14cf81c33a688ad764414517966668995d61..cc34d1d2f42a271f57d818fbfb0ade5cc8088109 100644
--- a/src/processor_capture_holder.cpp
+++ b/src/processor_capture_holder.cpp
@@ -22,7 +22,7 @@ void ProcessorCaptureHolder::process(CaptureBasePtr _capture_ptr)
   buffer_.push_back(_capture_ptr);
 }
 
-bool ProcessorCaptureHolder::keyFrameCallback(FrameBasePtr _keyframe_ptr,
+void ProcessorCaptureHolder::keyFrameCallback(FrameBasePtr _keyframe_ptr,
                                               const Scalar& _time_tolerance)
 {
   assert(_keyframe_ptr->getTrajectoryPtr() != nullptr
@@ -37,7 +37,7 @@ bool ProcessorCaptureHolder::keyFrameCallback(FrameBasePtr _keyframe_ptr,
   if (existing_capture == nullptr)
   {
     WOLF_WARN("Could not find a capture at ts : ", new_ts.get());
-    return false;
+    return;
   }
 
   WOLF_DEBUG("ProcessorCaptureHolder::keyFrameCallback", _time_tolerance);
@@ -63,7 +63,7 @@ bool ProcessorCaptureHolder::keyFrameCallback(FrameBasePtr _keyframe_ptr,
     // Remove as we don't want duplicates
     buffer_.remove(existing_capture);
 
-    return true;
+    return;
   }
   else
   {
@@ -71,7 +71,7 @@ bool ProcessorCaptureHolder::keyFrameCallback(FrameBasePtr _keyframe_ptr,
                std::abs(new_ts - existing_capture->getTimeStamp()),
                " vs ", _time_tolerance);
 
-    return false;
+    return;
   }
 }
 
diff --git a/src/processor_capture_holder.h b/src/processor_capture_holder.h
index def28671964c642e1411f57c6ed4b2b857b09ddb..43eeab833691abdb458980773713ebf8e1ae0206 100644
--- a/src/processor_capture_holder.h
+++ b/src/processor_capture_holder.h
@@ -47,8 +47,8 @@ public:
    */
   virtual bool voteForKeyFrame() override { return false; }
 
-  virtual bool keyFrameCallback(FrameBasePtr _keyframe_ptr,
-                                const Scalar& _time_tolerance) ;
+  virtual void keyFrameCallback(FrameBasePtr _keyframe_ptr,
+                                const Scalar& _time_tolerance) override;
 
   /**
    * \brief Finds the capture that contains the closest previous motion of _ts
diff --git a/src/processor_loopclosure_base.cpp b/src/processor_loopclosure_base.cpp
index 3369b5bc53b0b4a24e35813b122139f0ea1e975b..ffb3b1c8e97d56f27b5d5b016e24169acf4ce332 100644
--- a/src/processor_loopclosure_base.cpp
+++ b/src/processor_loopclosure_base.cpp
@@ -38,10 +38,10 @@ void ProcessorLoopClosureBase::process(CaptureBasePtr _incoming_ptr)
 }
 
 //##############################################################################
-bool ProcessorLoopClosureBase::keyFrameCallback(FrameBasePtr /*_keyframe_ptr*/,
+void ProcessorLoopClosureBase::keyFrameCallback(FrameBasePtr /*_keyframe_ptr*/,
                                                 const Scalar& /*_time_tol_other*/)
 {
-  return false;
+    //
 }
 
 }// namespace wolf
diff --git a/src/processor_loopclosure_base.h b/src/processor_loopclosure_base.h
index 8de42fa59b6beea14f0e7209f5de8c15b6c9fe49..fa3af48e3496b8aa697edf8012f5e0bc1a9db3a1 100644
--- a/src/processor_loopclosure_base.h
+++ b/src/processor_loopclosure_base.h
@@ -56,8 +56,8 @@ public:
      */
   virtual void process(CaptureBasePtr _incoming_ptr) override;
 
-  virtual bool keyFrameCallback(FrameBasePtr _keyframe_ptr,
-                                const Scalar& _time_tol_other) ;
+  virtual void keyFrameCallback(FrameBasePtr _keyframe_ptr,
+                                const Scalar& _time_tol_other) override ;
 
   const std::vector<FrameBasePtr>& getCandidates() const noexcept;
 
diff --git a/src/processor_tracker.h b/src/processor_tracker.h
index d8b39bf39422d59b3b73f46339d08685b4c08f5d..2ed1ae6e4624af8bb359a9507598e92b58301850 100644
--- a/src/processor_tracker.h
+++ b/src/processor_tracker.h
@@ -100,8 +100,6 @@ class ProcessorTracker : public ProcessorBase
         void setMaxNewFeatures(const unsigned int& _max_new_features);
         unsigned int getMaxNewFeatures();
 
-//        virtual bool keyFrameCallback(FrameBasePtr _keyframe_ptr, const Scalar& _time_tol_other);
-
         bool checkTimeTolerance(const TimeStamp& _ts1, const TimeStamp& _ts2);
         bool checkTimeTolerance(const CaptureBasePtr _cap, const TimeStamp& _ts);
         bool checkTimeTolerance(const FrameBasePtr _frm, const TimeStamp& _ts);