mirror of
https://github.com/JulianGro/overte.git
synced 2025-04-14 05:26:32 +02:00
some debugging
This commit is contained in:
parent
5244274ae4
commit
ddf5b0f316
5 changed files with 68 additions and 12 deletions
|
@ -515,7 +515,9 @@ void OctreeStatsDialog::showOctreeServersOfType(int& serverCount, NodeType_t ser
|
|||
QString incomingLikelyLostString = locale.toString((uint)seqStats.getLost());
|
||||
QString incomingRecovered = locale.toString((uint)seqStats.getRecovered());
|
||||
|
||||
qint64 clockSkewInMS = node->getClockSkewUsec() / USECS_PER_MSEC;
|
||||
qint64 clockSkewInUsecs = node->getClockSkewUsec();
|
||||
QString formattedClockSkewString = formatUsecTime(clockSkewInUsecs);
|
||||
qint64 clockSkewInMS = clockSkewInUsecs / (qint64)USECS_PER_MSEC;
|
||||
QString incomingFlightTimeString = locale.toString((int)stats.getIncomingFlightTimeAverage());
|
||||
QString incomingPingTimeString = locale.toString(node->getPingMs());
|
||||
QString incomingClockSkewString = locale.toString(clockSkewInMS);
|
||||
|
@ -536,7 +538,9 @@ void OctreeStatsDialog::showOctreeServersOfType(int& serverCount, NodeType_t ser
|
|||
" Average Ping Time: " << qPrintable(incomingPingTimeString) << " msecs";
|
||||
|
||||
serverDetails << "<br/>" <<
|
||||
" Average Clock Skew: " << qPrintable(incomingClockSkewString) << " msecs";
|
||||
" Average Clock Skew: " << qPrintable(incomingClockSkewString) << " msecs" <<
|
||||
" [" << qPrintable(formattedClockSkewString) << "]";
|
||||
|
||||
|
||||
serverDetails << "<br/>" << "Incoming" <<
|
||||
" Bytes: " << qPrintable(incomingBytesString) <<
|
||||
|
|
|
@ -158,9 +158,10 @@ void NodeList::timePingReply(ReceivedMessage& message, const SharedNodePointer&
|
|||
sendingNode->setPingMs(pingTime / 1000);
|
||||
sendingNode->updateClockSkewUsec(clockSkew);
|
||||
|
||||
const bool wantDebug = false;
|
||||
const bool wantDebug = true;
|
||||
|
||||
if (wantDebug) {
|
||||
auto averageClockSkew = sendingNode->getClockSkewUsec();
|
||||
qCDebug(networking) << "PING_REPLY from node " << *sendingNode << "\n" <<
|
||||
" now: " << now << "\n" <<
|
||||
" ourTime: " << ourOriginalTime << "\n" <<
|
||||
|
@ -168,8 +169,8 @@ void NodeList::timePingReply(ReceivedMessage& message, const SharedNodePointer&
|
|||
" oneWayFlightTime: " << oneWayFlightTime << "\n" <<
|
||||
" othersReplyTime: " << othersReplyTime << "\n" <<
|
||||
" othersExprectedReply: " << othersExpectedReply << "\n" <<
|
||||
" clockSkew: " << clockSkew << "\n" <<
|
||||
" average clockSkew: " << sendingNode->getClockSkewUsec();
|
||||
" clockSkew: " << clockSkew << "[" << formatUsecTime(clockSkew) << "]" << "\n" <<
|
||||
" average clockSkew: " << averageClockSkew << "[" << formatUsecTime(averageClockSkew) << "]";
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -747,7 +747,7 @@ const char* OctreeSceneStats::getItemValue(Item item) {
|
|||
}
|
||||
|
||||
void OctreeSceneStats::trackIncomingOctreePacket(ReceivedMessage& message, bool wasStatsPacket, qint64 nodeClockSkewUsec) {
|
||||
const bool wantExtraDebugging = false;
|
||||
const bool wantExtraDebugging = true;
|
||||
|
||||
// skip past the flags
|
||||
message.seek(sizeof(OCTREE_PACKET_FLAGS));
|
||||
|
@ -768,6 +768,7 @@ void OctreeSceneStats::trackIncomingOctreePacket(ReceivedMessage& message, bool
|
|||
qCDebug(octree) << "sentAt:" << sentAt << " usecs";
|
||||
qCDebug(octree) << "arrivedAt:" << arrivedAt << " usecs";
|
||||
qCDebug(octree) << "nodeClockSkewUsec:" << nodeClockSkewUsec << " usecs";
|
||||
qCDebug(octree) << "node Clock Skew:" << formatUsecTime(nodeClockSkewUsec);
|
||||
qCDebug(octree) << "flightTime:" << flightTime << " usecs";
|
||||
}
|
||||
|
||||
|
|
|
@ -621,16 +621,62 @@ void debug::checkDeadBeef(void* memoryVoid, int size) {
|
|||
assert(memcmp((unsigned char*)memoryVoid, DEADBEEF, std::min(size, DEADBEEF_SIZE)) != 0);
|
||||
}
|
||||
|
||||
QString formatUsecTime(float usecs, int prec) {
|
||||
static const quint64 SECONDS_PER_MINUTE = 60;
|
||||
static const quint64 USECS_PER_MINUTE = USECS_PER_SECOND * SECONDS_PER_MINUTE;
|
||||
QString formatUsecTime(quint64 usecs, int prec) {
|
||||
static const quint64 USECS_PER_MINUTE = USECS_PER_SECOND * 60;
|
||||
static const quint64 USECS_PER_HOUR = USECS_PER_MINUTE * 60;
|
||||
|
||||
QString result;
|
||||
if (usecs > USECS_PER_MINUTE) {
|
||||
result = QString::number(usecs / USECS_PER_MINUTE, 'f', prec) + "min";
|
||||
if (usecs > USECS_PER_HOUR) {
|
||||
result = QString::number(usecs / USECS_PER_HOUR) + "hrs";
|
||||
} else if (usecs > USECS_PER_MINUTE) {
|
||||
result = QString::number(usecs / USECS_PER_MINUTE) + "min";
|
||||
} else if (usecs > USECS_PER_SECOND) {
|
||||
result = QString::number(usecs / USECS_PER_SECOND, 'f', prec) + 's';
|
||||
result = QString::number(usecs / USECS_PER_SECOND) + 's';
|
||||
} else if (usecs > USECS_PER_MSEC) {
|
||||
result = QString::number(usecs / USECS_PER_MSEC) + "ms";
|
||||
} else {
|
||||
result = QString::number(usecs) + "us";
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
QString formatUsecTime(qint64 usecs, int prec) {
|
||||
static const qint64 USECS_PER_MSEC = 1000;
|
||||
static const qint64 USECS_PER_SECOND = 1000 * USECS_PER_MSEC;
|
||||
static const qint64 USECS_PER_MINUTE = USECS_PER_SECOND * 60;
|
||||
static const qint64 USECS_PER_HOUR = USECS_PER_MINUTE * 60;
|
||||
QString result;
|
||||
if (usecs > USECS_PER_HOUR) {
|
||||
result = QString::number(usecs / USECS_PER_HOUR) + "hrs";
|
||||
} else if (usecs > USECS_PER_MINUTE || usecs < -USECS_PER_MINUTE) {
|
||||
result = QString::number(usecs / USECS_PER_MINUTE) + "min";
|
||||
} else if (usecs > USECS_PER_SECOND || usecs < -USECS_PER_SECOND) {
|
||||
result = QString::number(usecs / USECS_PER_SECOND) + 's';
|
||||
} else if (usecs > USECS_PER_MSEC || usecs < -USECS_PER_MSEC) {
|
||||
result = QString::number(usecs / USECS_PER_MSEC) + "ms";
|
||||
} else {
|
||||
result = QString::number(usecs) + "us";
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
QString formatUsecTime(float usecs, int prec) {
|
||||
return formatUsecTime((double)usecs, prec);
|
||||
}
|
||||
|
||||
QString formatUsecTime(double usecs, int prec) {
|
||||
static const double USECS_PER_MSEC = 1000.0;
|
||||
static const double USECS_PER_SECOND = 1000.0 * USECS_PER_MSEC;
|
||||
static const double USECS_PER_MINUTE = USECS_PER_SECOND * 60.0;
|
||||
static const double USECS_PER_HOUR = USECS_PER_MINUTE * 60.0;
|
||||
QString result;
|
||||
if (usecs > USECS_PER_HOUR || usecs < -USECS_PER_HOUR) {
|
||||
result = QString::number(usecs / USECS_PER_HOUR, 'f', prec) + "hrs";
|
||||
} else if (usecs > USECS_PER_MINUTE || usecs < -USECS_PER_MINUTE) {
|
||||
result = QString::number(usecs / USECS_PER_MINUTE, 'f', prec) + "min";
|
||||
} else if (usecs > USECS_PER_SECOND || usecs < -USECS_PER_SECOND) {
|
||||
result = QString::number(usecs / USECS_PER_SECOND, 'f', prec) + 's';
|
||||
} else if (usecs > USECS_PER_MSEC || usecs < -USECS_PER_MSEC) {
|
||||
result = QString::number(usecs / USECS_PER_MSEC, 'f', prec) + "ms";
|
||||
} else {
|
||||
result = QString::number(usecs, 'f', prec) + "us";
|
||||
|
|
|
@ -187,6 +187,10 @@ inline bool isBetween(int64_t value, int64_t max, int64_t min) { return ((value
|
|||
inline bool isNaN(float value) { return value != value; }
|
||||
|
||||
QString formatUsecTime(float usecs, int prec = 3);
|
||||
QString formatUsecTime(double usecs, int prec = 3);
|
||||
QString formatUsecTime(quint64 usecs, int prec = 3);
|
||||
QString formatUsecTime(qint64 usecs, int prec = 3);
|
||||
|
||||
QString formatSecondsElapsed(float seconds);
|
||||
bool similarStrings(const QString& stringA, const QString& stringB);
|
||||
|
||||
|
|
Loading…
Reference in a new issue