mirror of
https://github.com/Armored-Dragon/overte.git
synced 2025-03-11 16:13:16 +01:00
add last scene packets, bytes and pps
This commit is contained in:
parent
7e6beba4d2
commit
86feabee99
3 changed files with 35 additions and 15 deletions
|
@ -315,13 +315,25 @@ void OctreeStatsDialog::showOctreeServersOfType(int& serverCount, NodeType_t ser
|
||||||
const unsigned long USECS_PER_MSEC = 1000;
|
const unsigned long USECS_PER_MSEC = 1000;
|
||||||
float lastFullEncode = stats.getLastFullTotalEncodeTime() / USECS_PER_MSEC;
|
float lastFullEncode = stats.getLastFullTotalEncodeTime() / USECS_PER_MSEC;
|
||||||
float lastFullSend = stats.getLastFullElapsedTime() / USECS_PER_MSEC;
|
float lastFullSend = stats.getLastFullElapsedTime() / USECS_PER_MSEC;
|
||||||
|
float lastFullSendInSeconds = stats.getLastFullElapsedTime() / USECS_PER_SECOND;
|
||||||
|
float lastFullPackets = stats.getLastFullTotalPackets();
|
||||||
|
float lastFullPPS = lastFullPackets;
|
||||||
|
if (lastFullSendInSeconds > 0) {
|
||||||
|
lastFullPPS = lastFullPackets / lastFullSendInSeconds;
|
||||||
|
}
|
||||||
|
|
||||||
QString lastFullEncodeString = locale.toString(lastFullEncode);
|
QString lastFullEncodeString = locale.toString(lastFullEncode);
|
||||||
QString lastFullSendString = locale.toString(lastFullSend);
|
QString lastFullSendString = locale.toString(lastFullSend);
|
||||||
|
QString lastFullPacketsString = locale.toString(lastFullPackets);
|
||||||
|
QString lastFullBytesString = locale.toString((uint)stats.getLastFullTotalBytes());
|
||||||
|
QString lastFullPPSString = locale.toString(lastFullPPS);
|
||||||
|
|
||||||
extraDetails << "<br/>" << "Last Full Scene... " <<
|
extraDetails << "<br/>" << "Last Full Scene... " <<
|
||||||
"Encode Time: " << qPrintable(lastFullEncodeString) << " ms " <<
|
"Encode: " << qPrintable(lastFullEncodeString) << " ms " <<
|
||||||
"Send Time: " << qPrintable(lastFullSendString) << " ms ";
|
"Send: " << qPrintable(lastFullSendString) << " ms " <<
|
||||||
|
"Packets: " << qPrintable(lastFullPacketsString) << " " <<
|
||||||
|
"Bytes: " << qPrintable(lastFullBytesString) << " " <<
|
||||||
|
"Rate: " << qPrintable(lastFullPPSString) << " PPS";
|
||||||
|
|
||||||
for (int i = 0; i < OctreeSceneStats::ITEM_COUNT; i++) {
|
for (int i = 0; i < OctreeSceneStats::ITEM_COUNT; i++) {
|
||||||
OctreeSceneStats::Item item = (OctreeSceneStats::Item)(i);
|
OctreeSceneStats::Item item = (OctreeSceneStats::Item)(i);
|
||||||
|
|
|
@ -27,9 +27,12 @@ OctreeSceneStats::OctreeSceneStats() :
|
||||||
_isReadyToSend(false),
|
_isReadyToSend(false),
|
||||||
_isStarted(false),
|
_isStarted(false),
|
||||||
_lastFullElapsed(0),
|
_lastFullElapsed(0),
|
||||||
|
_lastFullTotalEncodeTime(0),
|
||||||
|
_lastFullTotalPackets(0),
|
||||||
|
_lastFullTotalBytes(0),
|
||||||
|
|
||||||
_elapsedAverage(samples),
|
_elapsedAverage(samples),
|
||||||
_bitsPerOctreeAverage(samples),
|
_bitsPerOctreeAverage(samples),
|
||||||
_lastFullTotalEncodeTime(0),
|
|
||||||
_incomingPacket(0),
|
_incomingPacket(0),
|
||||||
_incomingBytes(0),
|
_incomingBytes(0),
|
||||||
_incomingWastedBytes(0),
|
_incomingWastedBytes(0),
|
||||||
|
@ -62,8 +65,10 @@ OctreeSceneStats& OctreeSceneStats::operator=(const OctreeSceneStats& other) {
|
||||||
void OctreeSceneStats::copyFromOther(const OctreeSceneStats& other) {
|
void OctreeSceneStats::copyFromOther(const OctreeSceneStats& other) {
|
||||||
_totalEncodeTime = other._totalEncodeTime;
|
_totalEncodeTime = other._totalEncodeTime;
|
||||||
_elapsed = other._elapsed;
|
_elapsed = other._elapsed;
|
||||||
_lastFullTotalEncodeTime = other._lastFullTotalEncodeTime;
|
|
||||||
_lastFullElapsed = other._lastFullElapsed;
|
_lastFullElapsed = other._lastFullElapsed;
|
||||||
|
_lastFullTotalEncodeTime = other._lastFullTotalEncodeTime;
|
||||||
|
_lastFullTotalPackets = other._lastFullTotalPackets;
|
||||||
|
_lastFullTotalBytes = other._lastFullTotalBytes;
|
||||||
_encodeStart = other._encodeStart;
|
_encodeStart = other._encodeStart;
|
||||||
|
|
||||||
_packets = other._packets;
|
_packets = other._packets;
|
||||||
|
@ -167,9 +172,6 @@ void OctreeSceneStats::sceneStarted(bool isFullScene, bool isMoving, OctreeEleme
|
||||||
_totalInternal = OctreeElement::getInternalNodeCount();
|
_totalInternal = OctreeElement::getInternalNodeCount();
|
||||||
_totalLeaves = OctreeElement::getLeafNodeCount();
|
_totalLeaves = OctreeElement::getLeafNodeCount();
|
||||||
|
|
||||||
if (isFullScene) {
|
|
||||||
qDebug() << "OctreeSceneStats::sceneStarted()... IS FULL SCENE";
|
|
||||||
}
|
|
||||||
_isFullScene = isFullScene;
|
_isFullScene = isFullScene;
|
||||||
_isMoving = isMoving;
|
_isMoving = isMoving;
|
||||||
|
|
||||||
|
@ -511,12 +513,6 @@ int OctreeSceneStats::unpackFromMessage(const unsigned char* sourceBuffer, int a
|
||||||
|
|
||||||
memcpy(&_isFullScene, sourceBuffer, sizeof(_isFullScene));
|
memcpy(&_isFullScene, sourceBuffer, sizeof(_isFullScene));
|
||||||
sourceBuffer += sizeof(_isFullScene);
|
sourceBuffer += sizeof(_isFullScene);
|
||||||
|
|
||||||
if (_isFullScene) {
|
|
||||||
_lastFullElapsed = _elapsed;
|
|
||||||
_lastFullTotalEncodeTime = _totalEncodeTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
memcpy(&_isMoving, sourceBuffer, sizeof(_isMoving));
|
memcpy(&_isMoving, sourceBuffer, sizeof(_isMoving));
|
||||||
sourceBuffer += sizeof(_isMoving);
|
sourceBuffer += sizeof(_isMoving);
|
||||||
memcpy(&_packets, sourceBuffer, sizeof(_packets));
|
memcpy(&_packets, sourceBuffer, sizeof(_packets));
|
||||||
|
@ -524,6 +520,13 @@ int OctreeSceneStats::unpackFromMessage(const unsigned char* sourceBuffer, int a
|
||||||
memcpy(&_bytes, sourceBuffer, sizeof(_bytes));
|
memcpy(&_bytes, sourceBuffer, sizeof(_bytes));
|
||||||
sourceBuffer += sizeof(_bytes);
|
sourceBuffer += sizeof(_bytes);
|
||||||
|
|
||||||
|
if (_isFullScene) {
|
||||||
|
_lastFullElapsed = _elapsed;
|
||||||
|
_lastFullTotalEncodeTime = _totalEncodeTime;
|
||||||
|
_lastFullTotalPackets = _packets;
|
||||||
|
_lastFullTotalBytes = _bytes;
|
||||||
|
}
|
||||||
|
|
||||||
memcpy(&_totalInternal, sourceBuffer, sizeof(_totalInternal));
|
memcpy(&_totalInternal, sourceBuffer, sizeof(_totalInternal));
|
||||||
sourceBuffer += sizeof(_totalInternal);
|
sourceBuffer += sizeof(_totalInternal);
|
||||||
memcpy(&_totalLeaves, sourceBuffer, sizeof(_totalLeaves));
|
memcpy(&_totalLeaves, sourceBuffer, sizeof(_totalLeaves));
|
||||||
|
|
|
@ -150,8 +150,10 @@ public:
|
||||||
unsigned long getTotalEncodeTime() const { return _totalEncodeTime; }
|
unsigned long getTotalEncodeTime() const { return _totalEncodeTime; }
|
||||||
unsigned long getElapsedTime() const { return _elapsed; }
|
unsigned long getElapsedTime() const { return _elapsed; }
|
||||||
|
|
||||||
unsigned long getLastFullTotalEncodeTime() const { return _lastFullTotalEncodeTime; }
|
|
||||||
unsigned long getLastFullElapsedTime() const { return _lastFullElapsed; }
|
unsigned long getLastFullElapsedTime() const { return _lastFullElapsed; }
|
||||||
|
unsigned long getLastFullTotalEncodeTime() const { return _lastFullTotalEncodeTime; }
|
||||||
|
unsigned int getLastFullTotalPackets() const { return _lastFullTotalPackets; }
|
||||||
|
unsigned long getLastFullTotalBytes() const { return _lastFullTotalBytes; }
|
||||||
|
|
||||||
// Used in client implementations to track individual octree packets
|
// Used in client implementations to track individual octree packets
|
||||||
void trackIncomingOctreePacket(const QByteArray& packet, bool wasStatsPacket, int nodeClockSkewUsec);
|
void trackIncomingOctreePacket(const QByteArray& packet, bool wasStatsPacket, int nodeClockSkewUsec);
|
||||||
|
@ -181,13 +183,16 @@ private:
|
||||||
quint64 _start;
|
quint64 _start;
|
||||||
quint64 _end;
|
quint64 _end;
|
||||||
quint64 _elapsed;
|
quint64 _elapsed;
|
||||||
|
|
||||||
quint64 _lastFullElapsed;
|
quint64 _lastFullElapsed;
|
||||||
|
quint64 _lastFullTotalEncodeTime;
|
||||||
|
unsigned int _lastFullTotalPackets;
|
||||||
|
unsigned long _lastFullTotalBytes;
|
||||||
|
|
||||||
SimpleMovingAverage _elapsedAverage;
|
SimpleMovingAverage _elapsedAverage;
|
||||||
SimpleMovingAverage _bitsPerOctreeAverage;
|
SimpleMovingAverage _bitsPerOctreeAverage;
|
||||||
|
|
||||||
quint64 _totalEncodeTime;
|
quint64 _totalEncodeTime;
|
||||||
quint64 _lastFullTotalEncodeTime;
|
|
||||||
quint64 _encodeStart;
|
quint64 _encodeStart;
|
||||||
|
|
||||||
// scene octree related data
|
// scene octree related data
|
||||||
|
|
Loading…
Reference in a new issue