Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
explicit_q_resonator_bank.hpp File Reference

Fixed-capacity bank of independently tuned band-pass resonators. More...

#include <pulp/runtime/triple_buffer.hpp>
#include <pulp/signal/ballistics_filter.hpp>
#include <pulp/signal/svf.hpp>
#include <algorithm>
#include <array>
#include <cmath>
#include <cstddef>
#include <cstdint>
#include <limits>
#include <memory>
#include <type_traits>

Go to the source code of this file.

Classes

class  pulp::signal::ExplicitQResonatorBankT< SampleType >
struct  pulp::signal::ExplicitQResonatorBankT< SampleType >::BandRecipe

Namespaces

namespace  pulp
namespace  pulp::signal

Typedefs

using pulp::signal::ExplicitQResonatorBank = ExplicitQResonatorBankT<float>
using pulp::signal::ExplicitQResonatorBank64 = ExplicitQResonatorBankT<double>

Detailed Description

Fixed-capacity bank of independently tuned band-pass resonators.

RT contract: prepare(), stage_band(), and publish() are control-thread operations. After prepare(), process(), and reset() allocate no memory, take no locks, perform no I/O, and throw no exceptions. Complete recipes cross to the audio thread through a three-slot latest-value publication and are adopted only at sample boundaries.