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
CompositorDebugPanel.h File Reference

Read-only diagnostic panel that exposes the live compositor's composite state - every tile (background, foreground, segments, layers) the renderer blits to produce the final frame, displayed in paint order with a thumbnail per tile. More...

#include <array>
#include <cstdint>
#include <deque>
#include <memory>
#include <span>
#include <string>
#include <unordered_map>
#include <unordered_set>
#include <vector>
#include "donner/base/EcsRegistry.h"
#include "donner/base/Vector2.h"
#include "donner/editor/GlTextureCache.h"
#include "donner/editor/ImGuiIncludes.h"
#include "donner/editor/LayerInspectorDiagnostics.h"
#include "glad/glad.h"
#include "donner/svg/compositor/CompositorController.h"
Include dependency graph for CompositorDebugPanel.h:
This graph shows which files directly or indirectly include this file:

Classes

class  donner::editor::CompositorDebugPanel
 Stateful - owns one preview resource per active composite tile (keyed on CompositeTileSnapshot::id). OpenGL builds upload CPU thumbnail pixels into small GL textures. WebGPU builds keep backend texture snapshots alive and pass their texture views directly to ImGui, avoiding thumbnail readback. Construct and destroy on the presentation thread. More...

Namespaces

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

Detailed Description

Read-only diagnostic panel that exposes the live compositor's composite state - every tile (background, foreground, segments, layers) the renderer blits to produce the final frame, displayed in paint order with a thumbnail per tile.

Design doc 0033 §M1++. The "comprehensive composite" view replaces the earlier separate per-layer / per-segment / split-bitmap tables.