Headless backend adapter over WaveformGpuRenderController. More...
#include <waveform_headless_render_backend.hpp>
Public Member Functions | |
| WaveformHeadlessRenderBackend (WaveformHeadlessRenderConfig config={}) | |
| ~WaveformHeadlessRenderBackend () | |
| bool | prepare (WaveformHeadlessRenderConfig config) |
| WaveformHeadlessRenderFrame | render (const pulp::audio::WaveformOverview &thumbnail, const WaveformGpuLayerPlan &plan, const WaveformGpuRenderContext &context={}) |
| void | clear () |
| WaveformGpuResourceCacheStats | stats () const noexcept |
| std::size_t | resource_count () const noexcept |
| std::size_t | released_resource_count () const noexcept |
| std::uint64_t | last_released_resource_id () const noexcept |
| std::size_t | staging_vertex_capacity () const noexcept |
Headless backend adapter over WaveformGpuRenderController.
A real GPU renderer should mirror this lifecycle with backend buffers or textures instead of copied vectors: plan, create/upload the static layer, commit the resource on the owning render/control thread, release returned replacement/eviction records, then compose cached static layers with cheap playhead-only redraws. GPU-assisted offline analysis may use the same generation-keyed publication shape, but live audio callbacks must never wait for GPU completion.
|
explicit |
| pulp::view::WaveformHeadlessRenderBackend::~WaveformHeadlessRenderBackend | ( | ) |
| void pulp::view::WaveformHeadlessRenderBackend::clear | ( | ) |
|
inlinenodiscardnoexcept |
| bool pulp::view::WaveformHeadlessRenderBackend::prepare | ( | WaveformHeadlessRenderConfig | config | ) |
|
inlinenodiscardnoexcept |
|
nodiscard |
|
inlinenodiscardnoexcept |
|
inlinenodiscardnoexcept |
|
nodiscardnoexcept |