35 if (compid != MAV_COMP_ID_AUTOPILOT1) {
38 if (flightModeGroup == -1) {
39 qCWarning(HealthAndArmingCheckReportLog) <<
"Flight mode group not set";
44 const events::HealthAndArmingChecks::Results &results = eventHandler.
healthAndArmingChecks()->results();
47 _hasWarningsOrErrors =
false;
48 for (
const auto& check : results.checks(flightModeGroup)) {
49 QString severity =
"";
50 if (events::externalLogLevel(check.log_levels) <= events::Log::Error) {
52 _hasWarningsOrErrors =
true;
53 }
else if (events::externalLogLevel(check.log_levels) <= events::Log::Warning) {
55 _hasWarningsOrErrors =
true;
58 QString description = QString::fromStdString(check.description);
60 QString::fromStdString(check.message),
61 description.replace(
"\n",
"<br/>"),
66 _canArm = results.canArm(flightModeGroup);
67 if (_missionModeGroup != -1) {
69 _canStartMission = results.canArm(_missionModeGroup);
71 if (_takeoffModeGroup != -1) {
72 _canTakeoff = results.canArm(_takeoffModeGroup);
75 const auto& healthComponents = results.healthComponents().health_components;
78 const auto gpsStateIter = healthComponents.find(
"gps");
79 if (gpsStateIter != healthComponents.end()) {
80 const events::HealthAndArmingChecks::HealthComponent&
gpsState = gpsStateIter->second;