MCPcopy Create free account
hub / github.com/aethersdr/AetherSDR / recordFrameAge

Method recordFrameAge

src/core/PerfTelemetry.cpp:228–251  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

226}
227
228void PerfTelemetry::recordFrameAge(FrameKind kind, double ageMs)
229{
230 const qint64 now = nowNs();
231 if (!beginRecord(now))
232 return;
233
234 {
235 QMutexLocker lock(&m_mutex);
236 QVector<double>& samples = kind == FrameKind::Waterfall
237 ? m_window.waterfallAgeMs
238 : m_window.panAgeMs;
239 samples.append(ageMs);
240 }
241
242 if (ageMs > kFrameAgeStallMs) {
243 logStall({
244 keyValue(QStringLiteral("kind"), QStringLiteral("frameAge")),
245 keyValue(QStringLiteral("stream"), frameKindName(kind)),
246 keyValue(QStringLiteral("ageMs"), msValue(ageMs))
247 });
248 }
249
250 maybeLogSummary(now);
251}
252
253void PerfTelemetry::recordPanFrame()
254{

Callers 3

wirePanLifecycleMethod · 0.80
testStallThresholdMatrixFunction · 0.80

Calls 1

frameKindNameFunction · 0.85

Tested by 2

testStallThresholdMatrixFunction · 0.64