Class thl::dsp::utils::LinearSmootherBank#

class LinearSmootherBank#

Persistent linear smoothing for many independent floating-point lanes.

The storage is contiguous and all ramp state is pre-sized, so advancing lanes during audio processing does not allocate. It is intended for parameter banks such as delay times, feedback matrices, gains, or modulation-control values.

Public Functions

inline void resize(size_t lane_count, float initial_value = 0.0f)#
inline size_t lane_count() const noexcept#
inline bool empty() const noexcept#
inline void set_ramp_samples(size_t ramp_samples) noexcept#
inline size_t ramp_samples() const noexcept#
inline void set_current_and_target(size_t lane, float value) noexcept#
inline void set_target(size_t lane, float value) noexcept#
inline void set_target(size_t lane, float value, size_t ramp_samples) noexcept#
inline void snap_to_targets() noexcept#
inline float next(size_t lane) noexcept#
inline void next_all(float *output, size_t output_count) noexcept#
inline float current(size_t lane) const noexcept#
inline float target(size_t lane) const noexcept#
inline size_t samples_remaining(size_t lane) const noexcept#