From eb0201e5e36f47de8c6b62090094bb6e4626a992 Mon Sep 17 00:00:00 2001
From: Joan Sola <jsola@iri.upc.edu>
Date: Sun, 2 Jan 2022 13:21:47 +0100
Subject: [PATCH] Use FeatureDiffDrive

---
 CMakeLists.txt                            |  2 ++
 include/core/feature/feature_diff_drive.h | 14 ++++++--------
 src/processor/processor_diff_drive.cpp    |  6 +++---
 3 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index ce42f3a4b..4a288d3fc 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -164,6 +164,7 @@ SET(HDRS_FACTOR
   )
 SET(HDRS_FEATURE
   include/core/feature/feature_base.h
+  include/core/feature/feature_diff_drive.h
   include/core/feature/feature_match.h
   include/core/feature/feature_motion.h
   include/core/feature/feature_odom_2d.h
@@ -283,6 +284,7 @@ SET(SRCS_FACTOR
   )
 SET(SRCS_FEATURE
   src/feature/feature_base.cpp
+  src/feature/feature_diff_drive.cpp
   src/feature/feature_motion.cpp
   src/feature/feature_odom_2d.cpp
   src/feature/feature_pose.cpp
diff --git a/include/core/feature/feature_diff_drive.h b/include/core/feature/feature_diff_drive.h
index dd58371c5..58703126a 100644
--- a/include/core/feature/feature_diff_drive.h
+++ b/include/core/feature/feature_diff_drive.h
@@ -38,16 +38,14 @@ WOLF_PTR_TYPEDEFS(FeatureDiffDrive)
 
 class FeatureDiffDrive : public FeatureMotion
 {
-public:
+    public:
 
-  FeatureDiffDrive(const Eigen::VectorXd& _delta_preintegrated,
-                   const Eigen::MatrixXd& _delta_preintegrated_covariance,
-                   const Eigen::VectorXd& _diff_drive_params,
-                   const Eigen::MatrixXd& _jacobian_diff_drive_params);
+        FeatureDiffDrive(const Eigen::VectorXd& _delta_preintegrated,
+                         const Eigen::MatrixXd& _delta_preintegrated_covariance,
+                         const Eigen::VectorXd& _diff_drive_params,
+                         const Eigen::MatrixXd& _jacobian_diff_drive_params);
 
-  virtual ~FeatureDiffDrive() = default;
-
-protected:
+        virtual ~FeatureDiffDrive() = default;
 
 };
 
diff --git a/src/processor/processor_diff_drive.cpp b/src/processor/processor_diff_drive.cpp
index d56e96fa7..6a433be78 100644
--- a/src/processor/processor_diff_drive.cpp
+++ b/src/processor/processor_diff_drive.cpp
@@ -29,7 +29,8 @@
 #include "core/processor/processor_diff_drive.h"
 
 #include "core/sensor/sensor_diff_drive.h"
-#include "core/feature/feature_motion.h"
+//#include "core/feature/feature_motion.h"
+#include "core/feature/feature_diff_drive.h"
 #include "core/factor/factor_diff_drive.h"
 
 #include "core/math/SE2.h"
@@ -167,8 +168,7 @@ CaptureMotionPtr ProcessorDiffDrive::emplaceCapture(const FrameBasePtr& _frame_o
 
 FeatureBasePtr ProcessorDiffDrive::emplaceFeature(CaptureMotionPtr _capture_motion)
 {
-    auto key_feature_ptr = FeatureBase::emplace<FeatureMotion>(_capture_motion,
-                                                               "ProcessorDiffDrive",
+    auto key_feature_ptr = FeatureBase::emplace<FeatureDiffDrive>(_capture_motion,
                                                                _capture_motion->getBuffer().back().delta_integr_,
                                                                _capture_motion->getBuffer().back().delta_integr_cov_,
                                                                _capture_motion->getCalibrationPreint(),
-- 
GitLab