mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-26 03:03:34 +08:00
FlightTaskManual/Orbit: make sure we are not required stick input data during orbit
This commit is contained in:
@@ -90,7 +90,14 @@ bool FlightTaskManual::initializeSubscriptions(SubscriptionArray &subscription_a
|
|||||||
|
|
||||||
bool FlightTaskManual::updateInitialize()
|
bool FlightTaskManual::updateInitialize()
|
||||||
{
|
{
|
||||||
return FlightTask::updateInitialize() && _evaluateSticks();
|
bool ret = FlightTask::updateInitialize();
|
||||||
|
const bool sticks_available = _evaluateSticks();
|
||||||
|
|
||||||
|
if (_sticks_data_required) {
|
||||||
|
ret = ret && sticks_available;
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool FlightTaskManual::update()
|
bool FlightTaskManual::update()
|
||||||
|
|||||||
@@ -63,6 +63,7 @@ public:
|
|||||||
protected:
|
protected:
|
||||||
matrix::Vector<float, 4> _sticks;
|
matrix::Vector<float, 4> _sticks;
|
||||||
bool _evaluateSticks();
|
bool _evaluateSticks();
|
||||||
|
bool _sticks_data_required = true; /**< let sibling task define if it depends on stick data */
|
||||||
|
|
||||||
float get_input_frame_yaw() { return _yaw; }
|
float get_input_frame_yaw() { return _yaw; }
|
||||||
|
|
||||||
|
|||||||
@@ -47,7 +47,9 @@ using namespace matrix;
|
|||||||
|
|
||||||
FlightTaskOrbit::FlightTaskOrbit(control::SuperBlock *parent, const char *name) :
|
FlightTaskOrbit::FlightTaskOrbit(control::SuperBlock *parent, const char *name) :
|
||||||
FlightTaskManual(parent, name)
|
FlightTaskManual(parent, name)
|
||||||
{}
|
{
|
||||||
|
_sticks_data_required = false;
|
||||||
|
}
|
||||||
|
|
||||||
bool FlightTaskOrbit::activate()
|
bool FlightTaskOrbit::activate()
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user