diff --git a/src/processor_imu.h b/src/processor_imu.h index 47decd316b1f420611629e390d783c63c64a337c..82abfa1da474402d869ea48db9984cb78696d408 100644 --- a/src/processor_imu.h +++ b/src/processor_imu.h @@ -72,6 +72,7 @@ class ProcessorIMU : public ProcessorMotion{ const MatrixXs& _data_cov, const FrameBasePtr& _frame_origin) override; virtual FeatureBasePtr createFeature(CaptureMotionPtr _capture_motion) override; + public: virtual ConstraintBasePtr emplaceConstraint(FeatureBasePtr _feature_motion, CaptureBasePtr _capture_origin) override; diff --git a/src/processor_motion.h b/src/processor_motion.h index 412b36f64d6013b2c0a2efa613a8a4c82c7c0a19..a95243fbd5144e97c2dcb85bc5086ce6f619e1f7 100644 --- a/src/processor_motion.h +++ b/src/processor_motion.h @@ -374,18 +374,22 @@ class ProcessorMotion : public ProcessorBase const MatrixXs& _data_cov, const FrameBasePtr& _frame_origin) = 0; + public: /** \brief create a feature corresponding to given capture and add the feature to this capture * \param _capture_motion: the parent capture */ FeatureBasePtr emplaceFeature(CaptureMotionPtr _capture_own); + protected: virtual FeatureBasePtr createFeature(CaptureMotionPtr _capture_own) = 0; + public: /** \brief create a constraint and link it in the wolf tree * \param _feature_motion: the parent feature * \param _frame_origin: the frame constrained by this motion constraint */ virtual ConstraintBasePtr emplaceConstraint(FeatureBasePtr _feature_motion, CaptureBasePtr _capture_origin) = 0; + protected: Motion motionZero(const TimeStamp& _ts); CaptureMotionPtr getCaptureMotionContainingTimeStamp(const TimeStamp& _ts);