|
QGroundControl
Ground Control Station for MAVLink Drones
|
#include <MissionFlightStatusCalculator.h>
Public Member Functions | |
| void | reset (Vehicle *controllerVehicle, Vehicle *managerVehicle, bool missionContainsVTOLTakeoff) |
| Resets the flight status fields to defaults based on vehicle properties. | |
| void | recalc (QmlObjectListModel *visualItems, MissionSettingsItem *settingsItem, Vehicle *controllerVehicle, Vehicle *managerVehicle, AppSettings *appSettings, PlanViewSettings *planViewSettings, bool missionContainsVTOLTakeoff) |
| const MissionFlightStatus_t & | status () const |
| double | minAMSLAltitude () const |
| double | maxAMSLAltitude () const |
Static Public Member Functions | |
| static void | calcPrevWaypointValues (VisualMissionItem *currentItem, VisualMissionItem *prevItem, double *azimuth, double *distance, double *altDifference) |
| static double | calcDistanceToHome (VisualMissionItem *currentItem, VisualMissionItem *homeItem) |
Computes mission flight status (distances, times, battery, altitude range) from a list of visual mission items and vehicle properties. Extracted from MissionController to reduce its complexity.
Definition at line 17 of file MissionFlightStatusCalculator.h.
|
static |
Definition at line 336 of file MissionFlightStatusCalculator.cc.
References VisualMissionItem::entryCoordinate(), and VisualMissionItem::exitCoordinate().
Referenced by recalc().
|
static |
Definition at line 326 of file MissionFlightStatusCalculator.cc.
References VisualMissionItem::amslEntryAlt(), VisualMissionItem::amslExitAlt(), VisualMissionItem::entryCoordinate(), and VisualMissionItem::exitCoordinate().
Referenced by recalc().
|
inline |
Definition at line 35 of file MissionFlightStatusCalculator.h.
|
inline |
Definition at line 34 of file MissionFlightStatusCalculator.h.
| void MissionFlightStatusCalculator::recalc | ( | QmlObjectListModel * | visualItems, |
| MissionSettingsItem * | settingsItem, | ||
| Vehicle * | controllerVehicle, | ||
| Vehicle * | managerVehicle, | ||
| AppSettings * | appSettings, | ||
| PlanViewSettings * | planViewSettings, | ||
| bool | missionContainsVTOLTakeoff | ||
| ) |
Runs the full recalculation over all visual items, updating per-item display properties and computing aggregate flight statistics.
Definition at line 48 of file MissionFlightStatusCalculator.cc.
References VisualMissionItem::additionalTimeDelay(), VisualMissionItem::amslEntryAlt(), MissionFlightStatus_t::batteryChangePoint, calcDistanceToHome(), calcPrevWaypointValues(), SimpleMissionItem::command(), ComplexMissionItem::complexDistance(), MissionSettingsItem::coordinate(), QmlObjectListModel::count(), MissionFlightStatus_t::cruiseSpeed, SimpleMissionItem::entryCoordinate(), VisualMissionItem::exitCoordinate(), QmlObjectListModel::get(), MissionFlightStatus_t::gimbalPitch, MissionFlightStatus_t::gimbalYaw, ComplexMissionItem::greatestDistanceTo(), MissionFlightStatus_t::hoverSpeed, VisualMissionItem::isLandCommand(), VisualMissionItem::isStandaloneCoordinate(), MissionFlightStatus_t::mAhBattery, SimpleMissionItem::mavCommand(), ComplexMissionItem::maxAMSLAltitude(), MissionFlightStatus_t::maxTelemetryDistance, ComplexMissionItem::minAMSLAltitude(), SimpleMissionItem::missionItem(), Vehicle::multiRotor(), AppSettings::offlineEditingAscentSpeed(), AppSettings::offlineEditingDescentSpeed(), MissionItem::param1(), reset(), VisualMissionItem::sequenceNumber(), VisualMissionItem::setAltDifference(), VisualMissionItem::setAltPercent(), VisualMissionItem::setAzimuth(), VisualMissionItem::setDistance(), VisualMissionItem::setDistanceFromStart(), VisualMissionItem::setMissionFlightStatus(), VisualMissionItem::setMissionVehicleYaw(), VisualMissionItem::setTerrainCollision(), VisualMissionItem::setTerrainPercent(), PlanViewSettings::showGimbalOnlyWhenSet(), VisualMissionItem::specifiedFlightSpeed(), VisualMissionItem::specifiedGimbalPitch(), VisualMissionItem::specifiedGimbalYaw(), SimpleMissionItem::specifiedVehicleYaw(), VisualMissionItem::specifiesCoordinate(), VisualMissionItem::terrainAltitude(), MissionFlightStatus_t::totalDistance, QGCMAVLink::VehicleClassFixedWing, QGCMAVLink::VehicleClassMultiRotor, MissionFlightStatus_t::vehicleSpeed, MissionFlightStatus_t::vehicleYaw, Vehicle::vtol(), and MissionFlightStatus_t::vtolMode.
| void MissionFlightStatusCalculator::reset | ( | Vehicle * | controllerVehicle, |
| Vehicle * | managerVehicle, | ||
| bool | missionContainsVTOLTakeoff | ||
| ) |
Resets the flight status fields to defaults based on vehicle properties.
Definition at line 15 of file MissionFlightStatusCalculator.cc.
References MissionFlightStatus_t::ampMinutesAvailable, MissionFlightStatus_t::batteriesRequired, MissionFlightStatus_t::batteryChangePoint, FirmwarePlugin::batteryConsumptionData(), AppSettings::batteryPercentRemainingAnnounce(), MissionFlightStatus_t::cruiseAmps, MissionFlightStatus_t::cruiseAmpsTotal, MissionFlightStatus_t::cruiseDistance, MissionFlightStatus_t::cruiseSpeed, MissionFlightStatus_t::cruiseTime, Vehicle::defaultCruiseSpeed(), Vehicle::defaultHoverSpeed(), Vehicle::firmwarePlugin(), MissionFlightStatus_t::gimbalPitch, MissionFlightStatus_t::gimbalYaw, MissionFlightStatus_t::hoverAmps, MissionFlightStatus_t::hoverAmpsTotal, MissionFlightStatus_t::hoverDistance, MissionFlightStatus_t::hoverSpeed, MissionFlightStatus_t::hoverTime, MissionFlightStatus_t::mAhBattery, MissionFlightStatus_t::maxTelemetryDistance, Vehicle::multiRotor(), MissionFlightStatus_t::plannedDistance, MissionFlightStatus_t::totalDistance, MissionFlightStatus_t::totalTime, QGCMAVLink::VehicleClassFixedWing, QGCMAVLink::VehicleClassMultiRotor, MissionFlightStatus_t::vehicleSpeed, MissionFlightStatus_t::vehicleYaw, Vehicle::vtol(), and MissionFlightStatus_t::vtolMode.
Referenced by recalc().
|
inline |
Definition at line 33 of file MissionFlightStatusCalculator.h.