Commit db7cdddd authored by DonLakeFlyer's avatar DonLakeFlyer

parent 1c2e8fe9
......@@ -449,7 +449,6 @@ void Vehicle::_commonInit(void)
connect(this, &Vehicle::homePositionChanged, this, &Vehicle::_updateDistanceHeadingToHome);
connect(this, &Vehicle::hobbsMeterChanged, this, &Vehicle::_updateHobbsMeter);
connect(_toolbox->qgcPositionManager(), &QGCPositionManager::gcsPositionChanged, this, &Vehicle::_updateDistanceToGCS);
_missionManager = new MissionManager(this);
......@@ -525,6 +524,9 @@ void Vehicle::_commonInit(void)
_flightDistanceFact.setRawValue(0);
_flightTimeFact.setRawValue(0);
_flightTimeUpdater.setInterval(1000);
_flightTimeUpdater.setSingleShot(false);
connect(&_flightTimeUpdater, &QTimer::timeout, this, &Vehicle::_updateFlightTime);
// Set video stream to udp if running ArduSub and Video is disabled
if (sub() && _settingsManager->videoSettings()->videoSource()->rawValue() == VideoSettings::videoDisabled) {
......@@ -1667,6 +1669,7 @@ void Vehicle::_updateArmed(bool armed)
_clearCameraTriggerPoints();
} else {
_trajectoryPoints->stop();
_flightTimerStop();
// Also handle Video Streaming
if(qgcApp()->toolbox()->videoManager()->videoReceiver()) {
if(_settingsManager->videoSettings()->disableWhenDisarmed()->rawValue().toBool()) {
......@@ -2560,10 +2563,21 @@ void Vehicle::_clearCameraTriggerPoints(void)
void Vehicle::_flightTimerStart(void)
{
_flightTimer.start();
_flightTimeUpdater.start();
_flightDistanceFact.setRawValue(0);
_flightTimeFact.setRawValue(0);
}
void Vehicle::_flightTimerStop(void)
{
_flightTimeUpdater.stop();
}
void Vehicle::_updateFlightTime(void)
{
_flightTimeFact.setRawValue((double)_flightTimer.elapsed() / 1000.0);
}
void Vehicle::_startPlanRequest(void)
{
if (_missionManagerInitialRequestSent) {
......
......@@ -1258,6 +1258,7 @@ private slots:
void _adsbTimerTimeout ();
void _orbitTelemetryTimeout (void);
void _protocolVersionTimeOut(void);
void _updateFlightTime (void);
private:
bool _containsLink (LinkInterface* link);
......@@ -1331,6 +1332,7 @@ private:
void _initializeCsv();
void _writeCsvLine();
void _flightTimerStart(void);
void _flightTimerStop(void);
int _id; ///< Mavlink system id
int _defaultComponentId;
......@@ -1461,6 +1463,7 @@ private:
int _nextSendMessageMultipleIndex;
QTime _flightTimer;
QTimer _flightTimeUpdater;
TrajectoryPoints* _trajectoryPoints;
QmlObjectListModel _cameraTriggerPoints;
QmlObjectListModel _adsbVehicles;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment