Donner 0.8.0-pre
Embeddable browser-grade SVG2 engine
Loading...
Searching...
No Matches
FrameMissTelemetry.h File Reference
#include <cstdint>
#include <string>
#include "donner/editor/FrameCostBreakdown.h"
Include dependency graph for FrameMissTelemetry.h:

Classes

struct  donner::editor::FrameMissResourceTelemetry
 Presentation memory counters included in frame-miss telemetry. More...
struct  donner::editor::FrameMissTelemetryInput
 Input used to build one frame-budget miss telemetry record. More...

Namespaces

namespace  donner
 Top-level Donner namespace, which is split into different sub-namespaces such as donner::svg and donner::css.

Enumerations

enum class  donner::editor::FrameBudgetMiss {
  WithinBudget ,
  Missed120Hz ,
  Missed60Hz
}
 Frame-budget miss severity.

Functions

FrameBudgetMiss donner::editor::ClassifyFrameBudgetMiss (double frameMs)
 Return the frame-budget miss severity for frameMs.
const char * donner::editor::FrameBudgetMissName (FrameBudgetMiss miss)
 Return a stable lowercase string for miss.
double donner::editor::KnownUiFrameCostMs (const FrameCostBreakdown &cost)
 Sum known profiler regions that execute on, or directly block, the UI frame.
double donner::editor::KnownAsyncWorkerCostMs (const FrameCostBreakdown &cost)
 Sum async compositor worker regions that may explain delayed presentation results.
std::string donner::editor::BuildFrameMissTelemetryJson (const FrameMissTelemetryInput &input)
 Serialize one frame-budget miss as a JSONL record.

Function Documentation

◆ BuildFrameMissTelemetryJson()

std::string donner::editor::BuildFrameMissTelemetryJson ( const FrameMissTelemetryInput & input)
nodiscard

Serialize one frame-budget miss as a JSONL record.

Returns an empty string when the frame stayed within the 120 Hz budget.

Parameters
inputFrame and cost counters to serialize.
Returns
JSON object ending with a trailing newline, or an empty string.