Backend-neutral waveform thumbnail upload and composition planning helpers. More...
#include <pulp/audio/waveform_overview.hpp>#include <pulp/view/waveform_editor_primitives.hpp>#include <cstddef>#include <cstdint>#include <span>#include <vector>Go to the source code of this file.
Classes | |
| struct | pulp::view::WaveformPeakVertex |
| struct | pulp::view::WaveformGpuUploadKey |
| struct | pulp::view::WaveformGpuLayerConfig |
| struct | pulp::view::WaveformGpuStaticLayerPlan |
| struct | pulp::view::WaveformGpuLayerPlan |
| struct | pulp::view::WaveformGpuResourceRecord |
| struct | pulp::view::WaveformGpuResourceCacheStats |
| struct | pulp::view::WaveformGpuResourcePutResult |
| class | pulp::view::WaveformGpuResourceCache |
| Metadata-only LRU for backend-owned waveform resources. More... | |
Namespaces | |
| namespace | pulp |
| namespace | pulp::view |
| Hover-cursor tracking for platform window hosts. | |
Functions | |
| bool | pulp::view::operator== (const WaveformGpuUploadKey &a, const WaveformGpuUploadKey &b) noexcept |
| bool | pulp::view::operator!= (const WaveformGpuUploadKey &a, const WaveformGpuUploadKey &b) noexcept |
| WaveformGpuStaticLayerPlan | pulp::view::build_waveform_gpu_static_layer_plan (const pulp::audio::WaveformOverview &thumbnail, const WaveformViewport &viewport, const WaveformGpuLayerConfig &config={}) |
| WaveformGpuLayerPlan | pulp::view::build_waveform_gpu_layer_plan (const pulp::audio::WaveformOverview &thumbnail, const WaveformViewport &viewport, int64_t playhead_sample, const WaveformGpuLayerConfig &config={}, const WaveformGpuUploadKey *previous_static_key=nullptr) |
| std::size_t | pulp::view::fill_waveform_peak_vertices (const pulp::audio::WaveformOverview &thumbnail, const WaveformGpuStaticLayerPlan &plan, std::span< WaveformPeakVertex > dst) noexcept |
| Fill caller-owned vertices for CPU fallback or GPU upload staging. | |
Backend-neutral waveform thumbnail upload and composition planning helpers.
These primitives describe what a GPU-backed waveform renderer can cache or upload, but they do not own Dawn/Skia/Metal resources. They are safe to use in CPU-only/headless builds and keep WaveformView display-only.