Donner SVG Editor & Engine
SVG-native editor and embeddable SVG2 + CSS3 engine in C++20, with GPU (WebGPU) and compact CPU renderers, built for correctness, security, and performance.
Loading...
Searching...
No Matches
CompositedPresentation.h File Reference
#include <cmath>
#include <cstdint>
#include <cstdlib>
#include <optional>
#include <ostream>
#include <variant>
#include <vector>
#include "donner/base/EcsRegistry.h"
#include "donner/base/MathUtils.h"
#include "donner/base/Vector2.h"
#include "donner/editor/SelectTool.h"
Include dependency graph for CompositedPresentation.h:
This graph shows which files directly or indirectly include this file:

Classes

class  donner::editor::CompositedPresentation
 Tracks composited presentation state across selection, drag, and release. More...
struct  donner::editor::CompositedPresentation::DiagnosticsSnapshot
 Immutable-by-copy presentation diagnostics for tests and MCP reporting. More...

Namespaces

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

Functions

std::ostream & donner::editor::operator<< (std::ostream &os, CompositedPresentation::Phase phase)
 Print a composited presentation phase for test diagnostics.

Class Documentation

◆ donner::editor::CompositedPresentation::DiagnosticsSnapshot

struct donner::editor::CompositedPresentation::DiagnosticsSnapshot

Immutable-by-copy presentation diagnostics for tests and MCP reporting.

Class Members
Vector2i cachedCanvasSize = Vector2i::Zero()
Entity cachedEntity = entt::null
uint64_t cachedVersion = 0
uint64_t chromeRefreshTargetVersion = 0
bool hasCachedTextures = false
Phase phase = Phase::NoCache
optional< ActiveDragPreview > settlingPreview
uint64_t settlingTargetVersion = 0
bool waitingForChromeRefresh = false
bool waitingForFullRender = false