From afba7b9697d9f1ae095be9e54ec2c6f7f2cc9eb0 Mon Sep 17 00:00:00 2001 From: Klaus Basan Date: Fri, 5 Jul 2019 01:53:26 +0200 Subject: [PATCH] Ref T698, improved display of statistics --- src/blackcore/network.cpp | 9 ++++++--- src/blackcore/vatsim/networkvatlib.cpp | 20 +++++++++++--------- 2 files changed, 17 insertions(+), 12 deletions(-) diff --git a/src/blackcore/network.cpp b/src/blackcore/network.cpp index 6f833411e..3beddbe40 100644 --- a/src/blackcore/network.cpp +++ b/src/blackcore/network.cpp @@ -32,6 +32,7 @@ namespace BlackCore m_statistics = true; } } + int INetwork::increaseStatisticsValue(const QString &identifier, const QString &appendix) { if (identifier.isEmpty() || !m_statistics) { return -1; } @@ -47,18 +48,19 @@ namespace BlackCore QString INetwork::getNetworkStatisticsAsText(bool reset, const QString &separator) { - QMap transformed; + QVector> transformed; for (const auto pair : makePairsRange(as_const(m_callStatistics))) { // key is pair.first, value is pair.second - transformed.insertMulti(pair.second, pair.first); + transformed.push_back({ pair.second, pair.first }); } if (reset) { this->clearStatistics(); } // sorted by value + std::sort(transformed.begin(), transformed.end(), std::greater<>()); QString stats; - for (const auto pair : makePairsRange(as_const(transformed))) + for (const auto &pair : transformed) { stats += (stats.isEmpty() ? QString() : separator) % @@ -66,4 +68,5 @@ namespace BlackCore } return stats; } + } // ns diff --git a/src/blackcore/vatsim/networkvatlib.cpp b/src/blackcore/vatsim/networkvatlib.cpp index 07b9fd467..921f5223c 100644 --- a/src/blackcore/vatsim/networkvatlib.cpp +++ b/src/blackcore/vatsim/networkvatlib.cpp @@ -636,7 +636,7 @@ namespace BlackCore Vat_SendClientQuery(m_net.data(), vatClientQueryFreq, toFSD(callsign)); // statistics - this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQuery")); + this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQuery"), vatClientQueryFreq); } void CNetworkVatlib::sendUserInfoQuery(const CCallsign &callsign) @@ -645,7 +645,7 @@ namespace BlackCore Vat_SendClientQuery(m_net.data(), vatClientQueryInfo, toFSD(callsign)); // statistics - this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQuery")); + this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQuery"), vatClientQueryInfo); } void CNetworkVatlib::setInterimPositionReceivers(const CCallsignSet &receivers) @@ -686,7 +686,7 @@ namespace BlackCore Vat_SendClientQuery(m_net.data(), vatClientQueryAtc, toFSD(callsign)); // statistics - this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQuery")); + this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQuery"), vatClientQueryAtc); } void CNetworkVatlib::sendAtisQuery(const CCallsign &callsign) @@ -699,7 +699,7 @@ namespace BlackCore Vat_SendClientQuery(m_net.data(), vatClientQueryAtis, toFSD(callsign)); // statistics - this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQuery")); + this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQuery"), vatClientQueryAtis); } void CNetworkVatlib::sendFlightPlan(const CFlightPlan &flightPlan) @@ -759,7 +759,7 @@ namespace BlackCore Vat_SendClientQuery(m_net.data(), vatClientQueryFP, toFSD(callsign)); // statistics - this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQuery")); + this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQuery"), vatClientQueryFP); } void CNetworkVatlib::sendRealNameQuery(const CCallsign &callsign) @@ -768,7 +768,7 @@ namespace BlackCore Vat_SendClientQuery(m_net.data(), vatClientQueryName, toFSD(callsign)); // statistics - this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQuery")); + this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQuery"), vatClientQueryName); } void CNetworkVatlib::sendCapabilitiesQuery(const CCallsign &callsign) @@ -777,7 +777,7 @@ namespace BlackCore Vat_SendClientQuery(m_net.data(), vatClientQueryCaps, toFSD(callsign)); // statistics - this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQuery")); + this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQuery"), vatClientQueryCaps); } void CNetworkVatlib::replyToFrequencyQuery(const CCallsign &callsign) // private @@ -786,7 +786,7 @@ namespace BlackCore Vat_SendClientQueryResponse(m_net.data(), vatClientQueryFreq, toFSD(callsign), toFSD(response)(), response.size()); // statistics - this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQueryResponse")); + this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQueryResponse"), vatClientQueryFreq); } void CNetworkVatlib::replyToNameQuery(const CCallsign &callsign) // private @@ -795,7 +795,7 @@ namespace BlackCore Vat_SendClientQueryResponse(m_net.data(), vatClientQueryName, toFSD(callsign), toFSD(response)(), response.size()); // statistics - this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQueryResponse")); + this->increaseStatisticsValue(QStringLiteral("Vat_SendClientQueryResponse"), vatClientQueryName); } void CNetworkVatlib::replyToConfigQuery(const CCallsign &callsign) @@ -1100,6 +1100,7 @@ namespace BlackCore // statistics self->increaseStatisticsValue(__func__); + // if (!isInRange) { return; } // sort out all broadcasted we DO NOT NEED QJsonParseError parserError; const QByteArray json = self->fromFSD(aircraftConfig).toUtf8(); const QJsonDocument doc = QJsonDocument::fromJson(json, &parserError); @@ -1113,6 +1114,7 @@ namespace BlackCore const QJsonObject packet = doc.object(); if (packet == JsonPackets::aircraftConfigRequest()) { + // this MUST work for NOT IN RANGE aircraft as well self->replyToConfigQuery(callsign); return; }