|
|
Donner SVG 0.8.0-pre
SVG editor and embeddable C++20 engine.
|
Interface for callers that pool blit uniform uploads into a per-frame scratch arena instead of creating one uniform buffer per blit. More...
#include "donner/svg/renderer/geode/GeodeTextureEncoder.h"
Public Member Functions | |
| virtual UniformAllocation | allocate (const void *data, uint64_t size, uint64_t alignment)=0 |
| Copy size bytes of uniform data into the scratch arena and return the borrowed (buffer, offset, size) range for the bind group. | |
Interface for callers that pool blit uniform uploads into a per-frame scratch arena instead of creating one uniform buffer per blit.
GeoEncoder implements this over its per-encoder uniform arena, so consecutive image blits and layer composites share one growing buffer (the buffer itself is only created when the arena grows).
Implementation contract (GeoEncoder's arena satisfies all four):