diff --git a/src/lib/FlightTasks/tasks/FlightTaskAuto.hpp b/src/lib/FlightTasks/tasks/FlightTaskAuto.hpp index b2ee30e9d5..ceeb4f5fa9 100644 --- a/src/lib/FlightTasks/tasks/FlightTaskAuto.hpp +++ b/src/lib/FlightTasks/tasks/FlightTaskAuto.hpp @@ -69,6 +69,8 @@ public: protected: + virtual void _reset() = 0; /**< Method that gets called once WaypointType has changed. */ + matrix::Vector3f _prev_prev_wp{}; /**< Triplet previous-previous triplet. This will be used for smoothing trajectories -> not used yet. */ matrix::Vector3f _prev_wp{}; /**< Triplet previous setpoint in local frame. If not previous triplet is available, the prev_wp is set to current position. */ matrix::Vector3f _target{}; /**< Triplet target setpoint in local frame. */ @@ -80,8 +82,6 @@ protected: 0.0f; /**< Cruise speed with which multicopter flies and gets set by triplet. If no valid, default cruise speed is used. */ WaypointType _type{WaypointType::idle}; /**< Type of current target triplet. */ - virtual void _reset() = 0; /**< Method called one type has changed. */ - private: control::BlockParamFloat _mc_cruise_default; /**< Default mc cruise speed*/ diff --git a/src/lib/FlightTasks/tasks/FlightTaskAutoLine.cpp b/src/lib/FlightTasks/tasks/FlightTaskAutoLine.cpp index 22c2ad755a..3df8cbe0d2 100644 --- a/src/lib/FlightTasks/tasks/FlightTaskAutoLine.cpp +++ b/src/lib/FlightTasks/tasks/FlightTaskAutoLine.cpp @@ -89,7 +89,6 @@ bool FlightTaskAutoLine::update() return true; } - void FlightTaskAutoLine::_reset() { /* Set setpoints equal current state. */ diff --git a/src/lib/FlightTasks/tasks/FlightTaskAutoLine.hpp b/src/lib/FlightTasks/tasks/FlightTaskAutoLine.hpp index 33dcc23aa5..359292f134 100644 --- a/src/lib/FlightTasks/tasks/FlightTaskAutoLine.hpp +++ b/src/lib/FlightTasks/tasks/FlightTaskAutoLine.hpp @@ -55,6 +55,8 @@ public: protected: + void _reset() override; + matrix::Vector2f _vel_sp_xy{}; matrix::Vector2f _pos_sp_xy{}; float _vel_sp_z = 0.0f; @@ -96,5 +98,4 @@ protected: private: float _getVelocityFromAngle(const float angle); /** Computes the speed at target depending on angle. */ - void _reset(); /** Resets setpoint. */ };