mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-05-24 15:15:55 +08:00
commander: ManualControl avoid unnecessary copy
This commit is contained in:
@@ -47,11 +47,8 @@ bool ManualControl::update()
|
||||
bool updated = false;
|
||||
|
||||
if (_manual_control_setpoint_sub.updated()) {
|
||||
manual_control_setpoint_s manual_control_setpoint;
|
||||
|
||||
if (_manual_control_setpoint_sub.copy(&manual_control_setpoint)) {
|
||||
process(manual_control_setpoint);
|
||||
}
|
||||
_last_manual_control_setpoint = _manual_control_setpoint;
|
||||
_manual_control_setpoint_sub.copy(&_manual_control_setpoint);
|
||||
|
||||
updated = true;
|
||||
}
|
||||
@@ -63,12 +60,6 @@ bool ManualControl::update()
|
||||
return updated && _rc_available;
|
||||
}
|
||||
|
||||
void ManualControl::process(const manual_control_setpoint_s &manual_control_setpoint)
|
||||
{
|
||||
_last_manual_control_setpoint = _manual_control_setpoint;
|
||||
_manual_control_setpoint = manual_control_setpoint;
|
||||
}
|
||||
|
||||
bool ManualControl::wantsOverride(const vehicle_control_mode_s &vehicle_control_mode)
|
||||
{
|
||||
const bool override_auto_mode = (_param_rc_override.get() & OverrideBits::OVERRIDE_AUTO_MODE_BIT)
|
||||
|
||||
@@ -75,7 +75,6 @@ public:
|
||||
|
||||
private:
|
||||
void updateParams() override;
|
||||
void process(const manual_control_setpoint_s &manual_control_setpoint);
|
||||
|
||||
uORB::Subscription _manual_control_setpoint_sub{ORB_ID(manual_control_setpoint)};
|
||||
manual_control_setpoint_s _manual_control_setpoint{};
|
||||
|
||||
Reference in New Issue
Block a user