From 41866c2ff23f859ceddcf4ccf3280e7faaadfc5e Mon Sep 17 00:00:00 2001 From: Don Gagne Date: Fri, 13 Nov 2015 10:48:48 -0800 Subject: [PATCH] Stop logging on last vehicle gone --- src/comm/MAVLinkProtocol.cc | 19 ++++++++++++------- src/comm/MAVLinkProtocol.h | 3 +++ 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/src/comm/MAVLinkProtocol.cc b/src/comm/MAVLinkProtocol.cc index 0cb2598c8..ff3681a65 100644 --- a/src/comm/MAVLinkProtocol.cc +++ b/src/comm/MAVLinkProtocol.cc @@ -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) } 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) QFile::remove(fileInfo.filePath()); } } + +void MAVLinkProtocol::_vehicleCountChanged(int count) +{ + if (count == 0) { + // Last vehicle is gone, close out logging + _stopLogging(); + } +} #endif diff --git a/src/comm/MAVLinkProtocol.h b/src/comm/MAVLinkProtocol.h index 31b70b8d7..02964a994 100644 --- a/src/comm/MAVLinkProtocol.h +++ b/src/comm/MAVLinkProtocol.h @@ -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); -- 2.22.0