|
|
Donner 0.5.1
Embeddable browser-grade SVG2 engine
|
Headless frame inspection: decode a sandbox wire stream into an indexed list of commands with human-readable summaries, and replay any prefix of those commands into a real backend. This is the engine that S4's eventual ImGui frame inspector panel will sit on top of; keeping it UI-free means we can test it now and reuse it from non-editor contexts (bug reports, .rnr replay CLIs, structural diffs). More...
#include <cstddef>#include <cstdint>#include <optional>#include <span>#include <string>#include <vector>#include "donner/editor/sandbox/ReplayingRenderer.h"#include "donner/editor/sandbox/Wire.h"#include "donner/svg/renderer/RendererInterface.h"Classes | |
| struct | donner::editor::sandbox::DecodedCommand |
| One message in the decoded stream. The summary is meant for UI display (ImGui command-list rows, text dumps, structural diffs) — it is intentionally terse and not round-trippable. More... | |
| struct | donner::editor::sandbox::InspectionResult |
| Outcome of FrameInspector::Decode. streamValid is true iff the entire wire stream parsed without error — a false value means commands contains whatever the inspector was able to decode before the first failure, and error describes why it stopped. More... | |
| class | donner::editor::sandbox::FrameInspector |
| All static helpers — inspector instances are stateless beyond the inputs each call is given. More... | |
Namespaces | |
| namespace | donner |
| Top-level Donner namespace, which is split into different sub-namespaces such as donner::svg and donner::css. | |
Headless frame inspection: decode a sandbox wire stream into an indexed list of commands with human-readable summaries, and replay any prefix of those commands into a real backend. This is the engine that S4's eventual ImGui frame inspector panel will sit on top of; keeping it UI-free means we can test it now and reuse it from non-editor contexts (bug reports, .rnr replay CLIs, structural diffs).
The inspector never rasterizes on its own — rasterization is always delegated to a caller-provided RendererInterface. Decoding, on the other hand, is fully self-contained and deterministic.