Per-frame cost counters for editor rendering diagnostics.
More...
#include "donner/editor/FrameCostBreakdown.h"
|
| struct | Overlay |
| | Cost counters for capturing and presenting selection/source-hover chrome. More...
|
| struct | CompositedUpload |
| | Cost counters for uploading compositor tiles into presentation textures. More...
|
| struct | CompositedRender |
| | Worker-side compositor raster costs for the render result that landed this UI frame. More...
|
| struct | SourceRopes |
| | Cost counters for source-focus reference rope layout, simulation, and drawing. More...
|
Per-frame cost counters for editor rendering diagnostics.
◆ donner::editor::FrameCostBreakdown::Overlay
| struct donner::editor::FrameCostBreakdown::Overlay |
Cost counters for capturing and presenting selection/source-hover chrome.
| Class Members |
|
int |
aabbCount = 0 |
Selection axis-aligned bounding boxes captured. |
|
Vector2i |
canvasSize = Vector2i::Zero() |
Viewport overlay size that would have been rasterized before immediate presentation. |
|
double |
captureMs = 0.0 |
Milliseconds spent capturing live DOM selection chrome into a snapshot. |
|
double |
drawMs = 0.0 |
Milliseconds spent drawing the captured chrome snapshot into a retained overlay payload. Zero for the editor's immediate screen-space overlay path. |
|
int |
handleCount = 0 |
Selection transform handles captured. |
|
bool |
hasLiveDragPreview = false |
True when a live drag preview was available while capturing the overlay. |
|
bool |
hasMarquee = false |
True when the overlay snapshot included a marquee rectangle. |
|
bool |
hasRepresentedDragPreview = false |
True when overlay chrome was projected to a represented drag preview for presentation. |
|
int |
hoverAabbCount = 0 |
Source-hover axis-aligned bounding boxes captured. |
|
int |
hoverPathCount = 0 |
Source-hover path items captured from geometry leaves. |
|
Vector2d |
liveDragTranslationDoc = Vector2d::Zero() |
Live document-space drag translation at overlay capture time. |
|
int |
pathCount = 0 |
Selection path items captured from geometry leaves. |
|
uint64_t |
payloadBytes = 0 |
Approximate retained overlay payload bytes. Zero for immediate screen-space presentation. |
|
Vector2d |
representedDragTranslationDoc = Vector2d::Zero() |
Document-space drag translation represented by the overlay presented this frame. |
|
int |
selectedElementCount = 0 |
Document elements selected when the overlay snapshot was captured. |
|
bool |
selectionBoundsOnly = false |
True when selected chrome used the large-selection combined-bounds LOD path. |
|
double |
snapshotMs = 0.0 |
Milliseconds spent ending the renderer frame and acquiring a retained overlay payload. Zero for the editor's immediate screen-space overlay path. |
|
int |
sourceHoverElementCount = 0 |
Source-hover elements included in the overlay snapshot. |
|
double |
uploadMs = 0.0 |
Milliseconds spent handing a retained overlay payload to the presentation texture cache. Zero for the editor's immediate screen-space overlay path. |
◆ donner::editor::FrameCostBreakdown::CompositedUpload
| struct donner::editor::FrameCostBreakdown::CompositedUpload |
Cost counters for uploading compositor tiles into presentation textures.
| Class Members |
|
int |
bitmapPayloadTileCount = 0 |
Number of tiles with a fresh CPU bitmap payload. |
|
int |
immediateTileCount = 0 |
Number of transient immediate-mode compositor tiles. |
|
int |
metadataOnlyTileCount = 0 |
Number of metadata-only tiles that reused an existing presentation texture. |
|
uint64_t |
payloadBytes = 0 |
Approximate bytes carried by tiles with fresh bitmap or GPU texture payloads. |
|
uint64_t |
payloadPixelArea = 0 |
Pixel area carried by tiles with fresh bitmap or GPU texture payloads. |
|
int |
payloadTileCount = 0 |
Number of tiles with a fresh bitmap or GPU texture payload. |
|
int |
texturePayloadTileCount = 0 |
Number of tiles with a fresh backend texture payload. |
|
int |
tileCount = 0 |
Number of compositor tiles in the uploaded preview. |
|
uint64_t |
tilePixelArea = 0 |
Pixel area represented by every tile, including metadata-only reuse. |
|
double |
uploadMs = 0.0 |
Milliseconds spent in the presentation texture cache upload path. |
◆ donner::editor::FrameCostBreakdown::CompositedRender
| struct donner::editor::FrameCostBreakdown::CompositedRender |
Worker-side compositor raster costs for the render result that landed this UI frame.
| Class Members |
|
double |
cachedMs = 0.0 |
Milliseconds spent rendering retained cached segment/layer tiles. |
|
int |
cachedTileCount = 0 |
Cached segment/layer tiles rendered this frame. |
|
double |
immediateMs = 0.0 |
Milliseconds spent rendering transient immediate-mode spans. |
|
int |
immediateTileCount = 0 |
Immediate-mode static spans rendered this frame. |
◆ donner::editor::FrameCostBreakdown::SourceRopes
| struct donner::editor::FrameCostBreakdown::SourceRopes |
Cost counters for source-focus reference rope layout, simulation, and drawing.
| Class Members |
|
int |
activeStateCount = 0 |
Number of active rope simulation states retained after pruning. |
|
int |
candidateCount = 0 |
Number of links considered from the active focus partition. |
|
int |
culledCount = 0 |
Number of links culled before draw because their route is outside the visible text region. |
|
double |
drawMs = 0.0 |
Milliseconds spent issuing ImGui draw commands for source reference links. |
|
int |
drawnCount = 0 |
Number of links drawn this frame. |
|
int |
laidOutCount = 0 |
Number of links with a visible screen-space connector layout. |
|
double |
layoutMs = 0.0 |
Milliseconds spent mapping source reference links to screen-space connector layout. |
|
int |
staticDrawnCount = 0 |
Number of overflow links drawn as static connectors instead of animated ropes. |
|
double |
updateMs = 0.0 |
Milliseconds spent updating rope simulation/path/hit-test state. |
◆ compositedRender
◆ compositedUpload
◆ documentCanvasCommitCount
| std::uint64_t donner::editor::FrameCostBreakdown::documentCanvasCommitCount = 0 |
Cumulative number of full-document canvas-size commits since document load.
◆ lastCommittedCanvasSize
Most recent full-document canvas size committed through the SVG document.
◆ overlay
| Overlay donner::editor::FrameCostBreakdown::overlay |
◆ sourceRopes
| SourceRopes donner::editor::FrameCostBreakdown::sourceRopes |
The documentation for this struct was generated from the following file: