Deluge Firmware 1.3.0
Build date: 2025.08.14
Loading...
Searching...
No Matches
deluge::dsp::reverb::Digital Class Reference

The Griesinger topology model from Part 1 of Effect Design by John Dattorro, classically based on the famous Lexicon 224 Digital Reverb. More...

#include <digital.hpp>

Inheritance diagram for deluge::dsp::reverb::Digital:
Collaboration diagram for deluge::dsp::reverb::Digital:

Public Member Functions

void process (std::span< q31_t > in, StereoBuffer< q31_t > output) override
Public Member Functions inherited from deluge::dsp::reverb::Mutable
void process (std::span< int32_t > in, StereoBuffer< q31_t > output) override
void Clear ()
void setRoomSize (float value) override
float getRoomSize () const override
void setDamping (float value) override
float getDamping () const override
void setWidth (float value) override
float getWidth () const override
void setHPF (float f) override
float getHPF () const override
void setLPF (float f) override
float getLPF () const override
Public Member Functions inherited from deluge::dsp::reverb::Base
constexpr void setPanLevels (const int32_t amplitude_left, const int32_t amplitude_right)
constexpr int32_t getPanLeft () const
constexpr int32_t getPanRight () const

Private Attributes

float lp_band_

Static Private Attributes

static constexpr float kRatio = 29761.f / kSampleRate
static constexpr size_t max_excursion = 16.f * kRatio

Additional Inherited Members

Public Types inherited from deluge::dsp::reverb::Base
enum class  FilterType { LowPass , HighPass }
Static Public Member Functions inherited from deluge::dsp::reverb::Base
template<FilterType filtertype>
static constexpr float calcFilterCutoff (float f)
Static Public Attributes inherited from deluge::dsp::reverb::Mutable
static constexpr float kReverbTimeMin = 0.01f
static constexpr float kReverbTimeMax = 0.98f
static constexpr float kWidthMin = 0.1f
static constexpr float kWidthMax = 0.9f
Protected Attributes inherited from deluge::dsp::reverb::Mutable
std::array< float, kBufferSize > buffer_ {}
FxEngine engine_ {buffer_, {0.5f / sample_rate, 0.3f / sample_rate}}
float input_gain_ = 0.2
float reverb_time_ = 0.665f
float diffusion_ = 0.625f
float lp_ {0.7f}
float lp_val_ {0.7f}
float lp_decay_1_ {0}
float lp_decay_2_ {0}
float hp_cutoff_val_ {0.f}
float hp_cutoff_ {calcFilterCutoff<FilterType::HighPass>(0)}
float hp_l_ {0.0}
float hp_r_ {0.0}
float lp_cutoff_val_ {0.f}
float lp_cutoff_ {calcFilterCutoff<FilterType::LowPass>(0)}
float lp_l_ {0.0}
float lp_r_ {0.0}
Static Protected Attributes inherited from deluge::dsp::reverb::Mutable
static constexpr float sample_rate = kSampleRate

Detailed Description

The Griesinger topology model from Part 1 of Effect Design by John Dattorro, classically based on the famous Lexicon 224 Digital Reverb.

Member Function Documentation

◆ process()

void deluge::dsp::reverb::Digital::process ( std::span< q31_t > in,
StereoBuffer< q31_t > output )
inlineoverridevirtual

The documentation for this class was generated from the following file: