diff --git a/src/processor_image_feature.h b/src/processor_image_feature.h
index e489c5a4a1e89346c2182b3661c93646168ed1d9..aa007e00780b8372c1493e15541a264d5fbe68e1 100644
--- a/src/processor_image_feature.h
+++ b/src/processor_image_feature.h
@@ -87,15 +87,15 @@ class ProcessorImageFeature : public ProcessorTrackerFeature
          */
         void postProcess();
 
-        void advance()
+        void advanceDerived()
         {
-            ProcessorTrackerFeature::advance();
+            ProcessorTrackerFeature::advanceDerived();
             image_last_ = image_incoming_;
         }
 
-        void reset()
+        void resetDerived()
         {
-            ProcessorTrackerFeature::reset();
+            ProcessorTrackerFeature::resetDerived();
             image_last_ = image_incoming_;
         }
 
diff --git a/src/processor_image_landmark.h b/src/processor_image_landmark.h
index a3732ba631b1b1ec3b28bbacf5fe324395c52832..489502b529eaf72dead7ff4938b3c32514ca437c 100644
--- a/src/processor_image_landmark.h
+++ b/src/processor_image_landmark.h
@@ -101,15 +101,15 @@ class ProcessorImageLandmark : public ProcessorTrackerLandmark
          */
         void preProcess();
 
-        void advance()
+        void advanceDerived()
         {
-            ProcessorTrackerLandmark::advance();
+            ProcessorTrackerLandmark::advanceDerived();
             image_last_ = image_incoming_;
         }
 
-        void reset()
+        void resetDerived()
         {
-            ProcessorTrackerLandmark::reset();
+            ProcessorTrackerLandmark::resetDerived();
             image_last_ = image_incoming_;
         }
 
diff --git a/src/processor_tracker.cpp b/src/processor_tracker.cpp
index baa0f9c10357261519267f911bf8eb31c00ae1b4..0b1878c7ccaace09aa46b53cc09168644db145b8 100644
--- a/src/processor_tracker.cpp
+++ b/src/processor_tracker.cpp
@@ -61,7 +61,7 @@ void ProcessorTracker::process(CaptureBasePtr const _incoming_ptr)
             // We only process new features in Last, here last = nullptr, so we do not have anything to do.
 
             // Update pointers
-            reset();
+            resetDerived();
             origin_ptr_ = incoming_ptr_;
             last_ptr_   = incoming_ptr_;
             incoming_ptr_ = nullptr;
@@ -80,7 +80,7 @@ void ProcessorTracker::process(CaptureBasePtr const _incoming_ptr)
             getProblem()->keyFrameCallback(kfrm, shared_from_this(), time_tolerance_);
 
             // Update pointers
-            reset();
+            resetDerived();
             origin_ptr_ = incoming_ptr_;
             last_ptr_   = incoming_ptr_;
             incoming_ptr_ = nullptr;
@@ -99,7 +99,7 @@ void ProcessorTracker::process(CaptureBasePtr const _incoming_ptr)
             processNew(max_new_features_);
 
             // Update pointers
-            reset();
+            resetDerived();
             origin_ptr_ = last_ptr_;
             last_ptr_   = incoming_ptr_;
             incoming_ptr_ = nullptr;
@@ -130,7 +130,7 @@ void ProcessorTracker::process(CaptureBasePtr const _incoming_ptr)
             establishConstraints();
 
             // Update pointers
-            reset();
+            resetDerived();
             origin_ptr_ = last_ptr_;
             last_ptr_   = incoming_ptr_;
             incoming_ptr_ = nullptr;
@@ -161,7 +161,7 @@ void ProcessorTracker::process(CaptureBasePtr const _incoming_ptr)
                 establishConstraints();
 
                 // Update pointers
-                reset();
+                resetDerived();
                 origin_ptr_ = last_ptr_;
                 last_ptr_   = incoming_ptr_;
                 incoming_ptr_ = nullptr;
@@ -176,7 +176,7 @@ void ProcessorTracker::process(CaptureBasePtr const _incoming_ptr)
                 incoming_ptr_->getFramePtr()->setTimeStamp(incoming_ptr_->getTimeStamp());
 
                 // Update pointers
-                advance();
+                advanceDerived();
                 last_ptr_   = incoming_ptr_;
                 incoming_ptr_ = nullptr;
             }
diff --git a/src/processor_tracker.h b/src/processor_tracker.h
index 31b83cf508b201813f5190622e55ad96ea5ed54c..12a4bb4cb2962b0afe827033c859bb0c19380ec2 100644
--- a/src/processor_tracker.h
+++ b/src/processor_tracker.h
@@ -175,7 +175,7 @@ class ProcessorTracker : public ProcessorBase
          * Call this when the tracking and keyframe policy work is done and
          * we need to get ready to accept a new incoming Capture.
          */
-        virtual void advance() = 0;
+        virtual void advanceDerived() = 0;
 
         /**\brief Process new Features or Landmarks
          *
@@ -193,7 +193,7 @@ class ProcessorTracker : public ProcessorBase
 
         /** \brief Reset the tracker using the \b last Capture as the new \b origin.
          */
-        virtual void reset() = 0;
+        virtual void resetDerived() = 0;
 
     public:
 
diff --git a/src/processor_tracker_feature.cpp b/src/processor_tracker_feature.cpp
index 21782ed1215d428a0b2b68e45df6de9b5a5c16b9..624d895988305e9673b6c4528f5e0d878d246810 100644
--- a/src/processor_tracker_feature.cpp
+++ b/src/processor_tracker_feature.cpp
@@ -65,7 +65,7 @@ unsigned int ProcessorTrackerFeature::processKnown()
     return matches_last_from_incoming_.size();
 }
 
-void ProcessorTrackerFeature::advance()
+void ProcessorTrackerFeature::advanceDerived()
 {
     //    std::cout << "ProcessorTrackerFeature::advance()" << std::endl;
     // Compose correspondences to get origin_from_incoming
@@ -90,7 +90,7 @@ void ProcessorTrackerFeature::advance()
         ftr->setProblem(getProblem());
 }
 
-void ProcessorTrackerFeature::reset()
+void ProcessorTrackerFeature::resetDerived()
 {
     //    std::cout << "ProcessorTrackerFeature::reset()" << std::endl;
     // We also reset here the list of correspondences, which passes from last--incoming to origin--last.
diff --git a/src/processor_tracker_feature.h b/src/processor_tracker_feature.h
index 27f03ee7f5046556d04022eff571a44ba5a8c226..82253eefcd6291d9233dc9025de89ecc236a7d6b 100644
--- a/src/processor_tracker_feature.h
+++ b/src/processor_tracker_feature.h
@@ -128,8 +128,8 @@ class ProcessorTrackerFeature : public ProcessorTracker
         virtual bool voteForKeyFrame() = 0;
 
         // We overload the advance and reset functions to update the lists of matches
-        void advance();
-        void reset();
+        void advanceDerived();
+        void resetDerived();
 
         /**\brief Process new Features
          *
diff --git a/src/processor_tracker_feature_corner.cpp b/src/processor_tracker_feature_corner.cpp
index 9e9ae49f8bfa7fc89b35a61dc4435f3e3e4c6f1d..33e670d69e048bf3ceae06a751656f7866c1de45 100644
--- a/src/processor_tracker_feature_corner.cpp
+++ b/src/processor_tracker_feature_corner.cpp
@@ -63,9 +63,9 @@ void ProcessorTrackerFeatureCorner::preProcess()
     t_current_prev_ = R_world_sensor_.transpose() * (t_world_sensor_prev_ - t_world_sensor_);
 }
 
-void ProcessorTrackerFeatureCorner::advance()
+void ProcessorTrackerFeatureCorner::advanceDerived()
 {
-    ProcessorTrackerFeature::advance();
+    ProcessorTrackerFeature::advanceDerived();
     corners_last_ = std::move(corners_incoming_);
 }
 
diff --git a/src/processor_tracker_feature_corner.h b/src/processor_tracker_feature_corner.h
index d80c6572f04e92603a2874880481ce9295a1143e..7fe63a9ef664db4b5f57f5aa8fbd0beef0d3f4d0 100644
--- a/src/processor_tracker_feature_corner.h
+++ b/src/processor_tracker_feature_corner.h
@@ -72,7 +72,7 @@ class ProcessorTrackerFeatureCorner : public ProcessorTrackerFeature
 
         virtual void preProcess();
 
-        void advance();
+        void advanceDerived();
 
         /** \brief Track provided features from \b last to \b incoming
          * \param _feature_list_in input list of features in \b last to track
diff --git a/src/processor_tracker_landmark.cpp b/src/processor_tracker_landmark.cpp
index 86fa4298b34674a4217a64ddd49cf789ecdeb27a..9c06036595520a7c30fb65fcb1b0a91f26310ba3 100644
--- a/src/processor_tracker_landmark.cpp
+++ b/src/processor_tracker_landmark.cpp
@@ -33,7 +33,7 @@ ProcessorTrackerLandmark::~ProcessorTrackerLandmark()
     //    }
 }
 
-void ProcessorTrackerLandmark::advance()
+void ProcessorTrackerLandmark::advanceDerived()
 {
     for (auto match : matches_landmark_from_last_)
     {
@@ -45,7 +45,7 @@ void ProcessorTrackerLandmark::advance()
     //            std::cout << "\t" << match.first->id() << " to " << match.second->landmark_ptr_->id() << std::endl;
 }
 
-void ProcessorTrackerLandmark::reset()
+void ProcessorTrackerLandmark::resetDerived()
 {
     //std::cout << "ProcessorTrackerLandmark::reset" << std::endl;
     for (auto match : matches_landmark_from_last_)
diff --git a/src/processor_tracker_landmark.h b/src/processor_tracker_landmark.h
index a9fbd87a52c48699bee65320b4f15b1217ac0f95..44db01813ba1002ded7dc1309f10a3bb964164c8 100644
--- a/src/processor_tracker_landmark.h
+++ b/src/processor_tracker_landmark.h
@@ -120,8 +120,8 @@ class ProcessorTrackerLandmark : public ProcessorTracker
         virtual bool voteForKeyFrame() = 0;
 
         // We overload the advance and reset functions to update the lists of matches
-        void advance();
-        void reset();
+        void advanceDerived();
+        void resetDerived();
 
         /** \brief Process new Features
          *
diff --git a/src/processor_tracker_landmark_corner.h b/src/processor_tracker_landmark_corner.h
index 29f711137aa9ae678b2f917e11650fc9aa118815..734acc5083260b65e1933d897d7fb1214f9ae075 100644
--- a/src/processor_tracker_landmark_corner.h
+++ b/src/processor_tracker_landmark_corner.h
@@ -96,12 +96,12 @@ class ProcessorTrackerLandmarkCorner : public ProcessorTrackerLandmark
         virtual void preProcess();
 //        virtual void postProcess() { }
 
-        void advance()
+        void advanceDerived()
         {
             //std::cout << "\tProcessorTrackerLandmarkCorner::advance:" << std::endl;
             //std::cout << "\t\tcorners_last: " << corners_last_.size() << std::endl;
             //std::cout << "\t\tcorners_incoming_: " << corners_incoming_.size() << std::endl;
-            ProcessorTrackerLandmark::advance();
+            ProcessorTrackerLandmark::advanceDerived();
             while (!corners_last_.empty())
             {
                 corners_last_.front()->remove();
@@ -110,12 +110,12 @@ class ProcessorTrackerLandmarkCorner : public ProcessorTrackerLandmark
             corners_last_ = std::move(corners_incoming_);
         }
 
-        void reset()
+        void resetDerived()
         {
             //std::cout << "\tProcessorTrackerLandmarkCorner::reset:" << std::endl;
             //std::cout << "\t\tcorners_last: " << corners_last_.size() << std::endl;
             //std::cout << "\t\tcorners_incoming_: " << corners_incoming_.size() << std::endl;
-            ProcessorTrackerLandmark::reset();
+            ProcessorTrackerLandmark::resetDerived();
             corners_last_ = std::move(corners_incoming_);
         }
 
diff --git a/src/processor_tracker_landmark_polyline.h b/src/processor_tracker_landmark_polyline.h
index 11d74666ab0310ae4bfb6158a299fd7b52e1f213..0f5c58045241f922147feaa03e367e0b145546b9 100644
--- a/src/processor_tracker_landmark_polyline.h
+++ b/src/processor_tracker_landmark_polyline.h
@@ -126,9 +126,9 @@ class ProcessorTrackerLandmarkPolyline : public ProcessorTrackerLandmark
         void computeTransformations(const TimeStamp& _ts);
         virtual void postProcess();
 
-        void advance();
+        void advanceDerived();
 
-        void reset();
+        void resetDerived();
 
         /** \brief Find provided landmarks in the incoming capture
          * \param _landmark_list_in input list of landmarks to be found in incoming
@@ -219,24 +219,24 @@ inline unsigned int ProcessorTrackerLandmarkPolyline::detectNewFeatures(const un
     return new_features_last_.size();
 }
 
-inline void ProcessorTrackerLandmarkPolyline::advance()
+inline void ProcessorTrackerLandmarkPolyline::advanceDerived()
 {
     //std::cout << "\tProcessorTrackerLandmarkPolyline::advance:" << std::endl;
     //std::cout << "\t\tcorners_last: " << polylines_last_.size() << std::endl;
     //std::cout << "\t\tcorners_incoming_: " << polylines_incoming_.size() << std::endl;
-    ProcessorTrackerLandmark::advance();
+    ProcessorTrackerLandmark::advanceDerived();
     for (auto polyline : polylines_last_)
         polyline->remove();
     polylines_last_ = std::move(polylines_incoming_);
     //std::cout << "advanced" << std::endl;
 }
 
-inline void ProcessorTrackerLandmarkPolyline::reset()
+inline void ProcessorTrackerLandmarkPolyline::resetDerived()
 {
     //std::cout << "\tProcessorTrackerLandmarkPolyline::reset:" << std::endl;
     //std::cout << "\t\tcorners_last: " << corners_last_.size() << std::endl;
     //std::cout << "\t\tcorners_incoming_: " << polylines_incoming_.size() << std::endl;
-    ProcessorTrackerLandmark::reset();
+    ProcessorTrackerLandmark::resetDerived();
     polylines_last_ = std::move(polylines_incoming_);
 }