From 247764b67964d1fc7b6a89a4e12ba92a24dd9b37 Mon Sep 17 00:00:00 2001 From: SamGondelman Date: Mon, 28 Aug 2017 13:47:27 -0700 Subject: [PATCH] add total entity packets in stat (kbps) --- interface/resources/qml/Stats.qml | 4 ++++ interface/src/ui/Stats.cpp | 3 +++ interface/src/ui/Stats.h | 2 ++ 3 files changed, 9 insertions(+) diff --git a/interface/resources/qml/Stats.qml b/interface/resources/qml/Stats.qml index 119f24c71f..159a696e5f 100644 --- a/interface/resources/qml/Stats.qml +++ b/interface/resources/qml/Stats.qml @@ -206,6 +206,10 @@ Item { text: "Audio Codec: " + root.audioCodec + " Noise Gate: " + root.audioNoiseGate; } + StatText { + visible: root.expanded; + text: "Entity Mixer In: " + root.entityPacketsInKbps + " kbps"; + } StatText { visible: root.expanded; text: "Downloads: " + root.downloads + "/" + root.downloadLimit + diff --git a/interface/src/ui/Stats.cpp b/interface/src/ui/Stats.cpp index 8e3636dd7e..767e499503 100644 --- a/interface/src/ui/Stats.cpp +++ b/interface/src/ui/Stats.cpp @@ -180,10 +180,12 @@ void Stats::updateStats(bool force) { int totalPingOctree = 0; int octreeServerCount = 0; int pingOctreeMax = 0; + int totalEntityKbps = 0; nodeList->eachNode([&](const SharedNodePointer& node) { // TODO: this should also support entities if (node->getType() == NodeType::EntityServer) { totalPingOctree += node->getPingMs(); + totalEntityKbps += node->getInboundBandwidth(); octreeServerCount++; if (pingOctreeMax < node->getPingMs()) { pingOctreeMax = node->getPingMs(); @@ -248,6 +250,7 @@ void Stats::updateStats(bool force) { STAT_UPDATE(audioCodec, audioClient->getSelectedAudioFormat()); STAT_UPDATE(audioNoiseGate, audioClient->getNoiseGateOpen() ? "Open" : "Closed"); + STAT_UPDATE(entityPacketsInKbps, octreeServerCount ? totalEntityKbps / octreeServerCount : -1); auto loadingRequests = ResourceCache::getLoadingRequests(); STAT_UPDATE(downloads, loadingRequests.size()); diff --git a/interface/src/ui/Stats.h b/interface/src/ui/Stats.h index 74d2589c35..b3c920d4ef 100644 --- a/interface/src/ui/Stats.h +++ b/interface/src/ui/Stats.h @@ -85,6 +85,7 @@ class Stats : public QQuickItem { STATS_PROPERTY(int, audioPacketLoss, 0) STATS_PROPERTY(QString, audioCodec, QString()) STATS_PROPERTY(QString, audioNoiseGate, QString()) + STATS_PROPERTY(int, entityPacketsInKbps, 0) STATS_PROPERTY(int, downloads, 0) STATS_PROPERTY(int, downloadLimit, 0) @@ -212,6 +213,7 @@ signals: void audioPacketLossChanged(); void audioCodecChanged(); void audioNoiseGateChanged(); + void entityPacketsInKbpsChanged(); void downloadsChanged(); void downloadLimitChanged();