diff --git a/CMakeLists.txt b/CMakeLists.txt index ce42f3a4b89ca2a94ff75ce0bb9ac8a6b56f155b..4a288d3fcdff6b78df77d38ba46025efcc4497e2 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 dd58371c517d0038a3387aa6e8d050d1b9866983..58703126a1a164ed3eeeebb79c76187cc6b1a057 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 d56e96fa7cd4cf7e2e77d6c769b5cf918df20f2e..6a433be7822f70f307d81b1f4868ba693d7b7237 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(),