|
|
Donner 0.5.1
Embeddable browser-grade SVG2 engine
|
Owns the advanced editor's renderer-side orchestration: async rendering, overlay rasterization, composited drag presentation, and selection-bounds cache promotion. More...
#include "donner/editor/RenderCoordinator.h"
Public Member Functions | |
| AsyncRenderer & | asyncRenderer () |
| const AsyncRenderer & | asyncRenderer () const |
| svg::Renderer & | renderer () |
| const SelectionBoundsCache & | selectionBoundsCache () const |
| ExperimentalDragPresentation & | experimentalDragPresentation () |
| const ExperimentalDragPresentation & | experimentalDragPresentation () const |
| std::uint64_t | displayedDocVersion () const |
| void | resetForLoadedDocument () |
| void | refreshSelectionBoundsCache (EditorApp &app) |
| void | promoteSelectionBoundsIfReady () |
| bool | rasterizeOverlayForCurrentSelection (EditorApp &app, const ViewportState &viewport, GlTextureCache &textures, const std::optional< Box2d > &marqueeRectDoc) |
| Rasterize the editor chrome (path outlines, selection AABBs, marquee) into the overlay texture. marqueeRectDoc is the active marquee rectangle in document space (nullopt when the user isn't marquee-dragging). All chrome is baked into this single overlay texture — Geode will later own the whole layer end-to-end. | |
| void | pollRenderResult (EditorApp &app, const ViewportState &viewport, GlTextureCache &textures, FrameHistory *frameHistory=nullptr) |
| Drain the latest async-render result into the editor's UI state. If a frameHistory is supplied, its latest slot is stamped with the backend (worker) ms reported by AsyncRenderer so the frame graph can plot backend time alongside ImGui frame time. nullptr is allowed for callers that don't care about backend timing. | |
| void | maybeRequestRender (EditorApp &app, SelectTool &selectTool, const ViewportState &viewport, bool experimentalMode, GlTextureCache &textures) |
Owns the advanced editor's renderer-side orchestration: async rendering, overlay rasterization, composited drag presentation, and selection-bounds cache promotion.