|
|
|
@ -57,6 +57,7 @@ const char* Vehicle::_altitudeAMSLFactName = "altitudeAMSL";
@@ -57,6 +57,7 @@ const char* Vehicle::_altitudeAMSLFactName = "altitudeAMSL";
|
|
|
|
|
const char* Vehicle::_flightDistanceFactName = "flightDistance"; |
|
|
|
|
const char* Vehicle::_flightTimeFactName = "flightTime"; |
|
|
|
|
const char* Vehicle::_distanceToHomeFactName = "distanceToHome"; |
|
|
|
|
const char* Vehicle::_hobbsFactName = "hobbs"; |
|
|
|
|
|
|
|
|
|
const char* Vehicle::_gpsFactGroupName = "gps"; |
|
|
|
|
const char* Vehicle::_batteryFactGroupName = "battery"; |
|
|
|
@ -165,6 +166,7 @@ Vehicle::Vehicle(LinkInterface* link,
@@ -165,6 +166,7 @@ Vehicle::Vehicle(LinkInterface* link,
|
|
|
|
|
, _flightDistanceFact (0, _flightDistanceFactName, FactMetaData::valueTypeDouble) |
|
|
|
|
, _flightTimeFact (0, _flightTimeFactName, FactMetaData::valueTypeElapsedTimeInSeconds) |
|
|
|
|
, _distanceToHomeFact (0, _distanceToHomeFactName, FactMetaData::valueTypeDouble) |
|
|
|
|
, _hobbsFact (0, _hobbsFactName, FactMetaData::valueTypeString) |
|
|
|
|
, _gpsFactGroup(this) |
|
|
|
|
, _batteryFactGroup(this) |
|
|
|
|
, _windFactGroup(this) |
|
|
|
@ -183,6 +185,8 @@ Vehicle::Vehicle(LinkInterface* link,
@@ -183,6 +185,8 @@ Vehicle::Vehicle(LinkInterface* link,
|
|
|
|
|
connect(this, &Vehicle::flightModeChanged, this, &Vehicle::_handleFlightModeChanged); |
|
|
|
|
connect(this, &Vehicle::armedChanged, this, &Vehicle::_announceArmedChanged); |
|
|
|
|
|
|
|
|
|
connect(_toolbox->multiVehicleManager(), &MultiVehicleManager::parameterReadyVehicleAvailableChanged, this, &Vehicle::_vehicleParamLoaded); |
|
|
|
|
|
|
|
|
|
_uas = new UAS(_mavlink, this, _firmwarePluginManager); |
|
|
|
|
|
|
|
|
|
connect(_uas, &UAS::imageReady, this, &Vehicle::_imageReady); |
|
|
|
@ -337,6 +341,7 @@ Vehicle::Vehicle(MAV_AUTOPILOT firmwareType,
@@ -337,6 +341,7 @@ Vehicle::Vehicle(MAV_AUTOPILOT firmwareType,
|
|
|
|
|
, _flightDistanceFact (0, _flightDistanceFactName, FactMetaData::valueTypeDouble) |
|
|
|
|
, _flightTimeFact (0, _flightTimeFactName, FactMetaData::valueTypeElapsedTimeInSeconds) |
|
|
|
|
, _distanceToHomeFact (0, _distanceToHomeFactName, FactMetaData::valueTypeDouble) |
|
|
|
|
, _hobbsFact (0, _hobbsFactName, FactMetaData::valueTypeString) |
|
|
|
|
, _gpsFactGroup(this) |
|
|
|
|
, _batteryFactGroup(this) |
|
|
|
|
, _windFactGroup(this) |
|
|
|
@ -352,6 +357,7 @@ void Vehicle::_commonInit(void)
@@ -352,6 +357,7 @@ void Vehicle::_commonInit(void)
|
|
|
|
|
|
|
|
|
|
connect(this, &Vehicle::coordinateChanged, this, &Vehicle::_updateDistanceToHome); |
|
|
|
|
connect(this, &Vehicle::homePositionChanged, this, &Vehicle::_updateDistanceToHome); |
|
|
|
|
connect(this, &Vehicle::hobbsMeterChanged, this, &Vehicle::_updateHobbsMeter); |
|
|
|
|
|
|
|
|
|
_missionManager = new MissionManager(this); |
|
|
|
|
connect(_missionManager, &MissionManager::error, this, &Vehicle::_missionManagerError); |
|
|
|
@ -392,6 +398,7 @@ void Vehicle::_commonInit(void)
@@ -392,6 +398,7 @@ void Vehicle::_commonInit(void)
|
|
|
|
|
_addFact(&_flightDistanceFact, _flightDistanceFactName); |
|
|
|
|
_addFact(&_flightTimeFact, _flightTimeFactName); |
|
|
|
|
_addFact(&_distanceToHomeFact, _distanceToHomeFactName); |
|
|
|
|
_addFact(&_hobbsFact, _hobbsFactName); |
|
|
|
|
|
|
|
|
|
_addFactGroup(&_gpsFactGroup, _gpsFactGroupName); |
|
|
|
|
_addFactGroup(&_batteryFactGroup, _batteryFactGroupName); |
|
|
|
@ -2862,6 +2869,11 @@ void Vehicle::_updateDistanceToHome(void)
@@ -2862,6 +2869,11 @@ void Vehicle::_updateDistanceToHome(void)
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void Vehicle::_updateHobbsMeter(void) |
|
|
|
|
{ |
|
|
|
|
_hobbsFact.setRawValue(hobbsMeter()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void Vehicle::forceInitialPlanRequestComplete(void) |
|
|
|
|
{ |
|
|
|
|
_initialPlanRequestComplete = true; |
|
|
|
@ -2894,6 +2906,15 @@ QString Vehicle::hobbsMeter()
@@ -2894,6 +2906,15 @@ QString Vehicle::hobbsMeter()
|
|
|
|
|
return QString("0000:00:00"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void Vehicle::_vehicleParamLoaded(bool ready) |
|
|
|
|
{ |
|
|
|
|
//-- TODO: This seems silly but can you think of a better
|
|
|
|
|
// way to update this?
|
|
|
|
|
if(ready) { |
|
|
|
|
emit hobbsMeterChanged(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|