mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-07-07 07:00:34 +08:00
mavlink-mission: Add support for opaque ids and replace update counter with it
This commit is contained in:
@@ -1935,19 +1935,19 @@ void Commander::checkForMissionUpdate()
|
||||
if (_mission_result_sub.updated()) {
|
||||
const mission_result_s &mission_result = _mission_result_sub.get();
|
||||
|
||||
const auto prev_mission_mission_update_counter = mission_result.mission_update_counter;
|
||||
const auto prev_mission_mission_id = mission_result.mission_id;
|
||||
_mission_result_sub.update();
|
||||
|
||||
// if mission_result is valid for the current mission
|
||||
const bool mission_result_ok = (mission_result.timestamp > _boot_timestamp)
|
||||
&& (mission_result.mission_update_counter > 0);
|
||||
&& (mission_result.mission_id > 0);
|
||||
|
||||
bool auto_mission_available = mission_result_ok && mission_result.valid;
|
||||
|
||||
if (mission_result_ok) {
|
||||
/* Only evaluate mission state if home is set */
|
||||
if (!_failsafe_flags.home_position_invalid &&
|
||||
(prev_mission_mission_update_counter != mission_result.mission_update_counter)) {
|
||||
(prev_mission_mission_id != mission_result.mission_id)) {
|
||||
|
||||
if (!auto_mission_available) {
|
||||
/* the mission is invalid */
|
||||
|
||||
@@ -56,6 +56,6 @@ void MissionChecks::checkAndReport(const Context &context, Report &reporter)
|
||||
}
|
||||
|
||||
// This is a mode requirement, no need to report
|
||||
reporter.failsafeFlags().auto_mission_missing = mission_result.mission_update_counter <= 0;
|
||||
reporter.failsafeFlags().auto_mission_missing = mission_result.mission_id <= 0;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user