Browse Source

Stop logging on last vehicle gone

QGC4.4
Don Gagne 10 years ago
parent
commit
41866c2ff2
  1. 19
      src/comm/MAVLinkProtocol.cc
  2. 3
      src/comm/MAVLinkProtocol.h

19
src/comm/MAVLinkProtocol.cc

@ -108,6 +108,10 @@ void MAVLinkProtocol::setToolbox(QGCToolbox *toolbox) @@ -108,6 +108,10 @@ void MAVLinkProtocol::setToolbox(QGCToolbox *toolbox)
connect(this, &MAVLinkProtocol::protocolStatusMessage, _app, &QGCApplication::criticalMessageBoxOnMainThread);
connect(this, &MAVLinkProtocol::saveTempFlightDataLog, _app, &QGCApplication::saveTempFlightDataLogOnMainThread);
#ifndef __mobile__
connect(_multiVehicleManager->vehicles(), &QmlObjectListModel::countChanged, this, &MAVLinkProtocol::_vehicleCountChanged);
#endif
emit versionCheckChanged(m_enable_version_check);
}
@ -217,13 +221,6 @@ void MAVLinkProtocol::_linkStatusChanged(LinkInterface* link, bool connected) @@ -217,13 +221,6 @@ void MAVLinkProtocol::_linkStatusChanged(LinkInterface* link, bool connected)
}
Q_UNUSED(found);
Q_ASSERT(found);
#ifndef __mobile__
if (_connectedLinks.count() == 0) {
// Last link is gone, close out logging
_stopLogging();
}
#endif
}
}
@ -729,4 +726,12 @@ void MAVLinkProtocol::deleteTempLogFiles(void) @@ -729,4 +726,12 @@ void MAVLinkProtocol::deleteTempLogFiles(void)
QFile::remove(fileInfo.filePath());
}
}
void MAVLinkProtocol::_vehicleCountChanged(int count)
{
if (count == 0) {
// Last vehicle is gone, close out logging
_stopLogging();
}
}
#endif

3
src/comm/MAVLinkProtocol.h

@ -283,6 +283,9 @@ signals: @@ -283,6 +283,9 @@ signals:
/// @brief Emitted when a temporary log file is ready for saving
void saveTempFlightDataLog(QString tempLogfile);
private slots:
void _vehicleCountChanged(int count);
private:
void _linkStatusChanged(LinkInterface* link, bool connected);

Loading…
Cancel
Save