sfFDN
Loading...
Searching...
No Matches
sfFDN::DelayBankTimeVarying Class Reference

A bank of parallel delay lines, each with its own delay setting. More...

#include <delaybank_time_varying.h>

Inheritance diagram for sfFDN::DelayBankTimeVarying:
[legend]
Collaboration diagram for sfFDN::DelayBankTimeVarying:
[legend]

Public Member Functions

 DelayBankTimeVarying (const DelayBankTimeVaryingOptions &config)
 Constructs a delay bank with a specified set of delays and maximum delay.
 
std::vector< float > GetDelays () const
 Returns the current delays for each delay line in the bank.
 
uint32_t InputChannelCount () const override
 Returns the number of input channels this processor expects.
 
uint32_t OutputChannelCount () const override
 Returns the number of output channels this processor produces.
 
void Clear () override
 Clears the internal delay buffers.
 
void Process (const AudioBuffer &input, AudioBuffer &output) noexcept override
 Processes a block of multi-channel audio.
 
std::unique_ptr< AudioProcessorClone () const override
 Creates a copy of the delay bank.
 
- Public Member Functions inherited from sfFDN::AudioProcessor

Detailed Description

A bank of parallel delay lines, each with its own delay setting.

Used for processing multiple channels of audio with different delays.

Note
The delay lines are instances of the Delay class, which is a non-interpolating delay line.

Constructor & Destructor Documentation

◆ DelayBankTimeVarying()

sfFDN::DelayBankTimeVarying::DelayBankTimeVarying ( const DelayBankTimeVaryingOptions & config)

Constructs a delay bank with a specified set of delays and maximum delay.

Parameters
configThe configuration for the delay bank.

Member Function Documentation

◆ Clear()

void sfFDN::DelayBankTimeVarying::Clear ( )
overridevirtual

Clears the internal delay buffers.

This sets all delay buffers to zero.

Implements sfFDN::AudioProcessor.

◆ Clone()

std::unique_ptr< AudioProcessor > sfFDN::DelayBankTimeVarying::Clone ( ) const
overridevirtual

Creates a copy of the delay bank.

Returns
A unique pointer to the cloned delay bank.

Implements sfFDN::AudioProcessor.

◆ GetDelays()

std::vector< float > sfFDN::DelayBankTimeVarying::GetDelays ( ) const

Returns the current delays for each delay line in the bank.

Returns
A vector of delay values for each channel.

◆ InputChannelCount()

uint32_t sfFDN::DelayBankTimeVarying::InputChannelCount ( ) const
overridevirtual

Returns the number of input channels this processor expects.

Returns
The number of input channels.
Note
This is equal to the number of delay lines in the bank.

Implements sfFDN::AudioProcessor.

◆ OutputChannelCount()

uint32_t sfFDN::DelayBankTimeVarying::OutputChannelCount ( ) const
overridevirtual

Returns the number of output channels this processor produces.

Returns
The number of output channels.
Note
This is equal to the number of delay lines in the bank.

Implements sfFDN::AudioProcessor.

◆ Process()

void sfFDN::DelayBankTimeVarying::Process ( const AudioBuffer & input,
AudioBuffer & output )
overridevirtualnoexcept

Processes a block of multi-channel audio.

Parameters
inputThe input audio buffer.
outputThe output audio buffer.
Note
The input and output buffers must have the same sample count and a channel count equal to the number of delay lines in the bank.

Implements sfFDN::AudioProcessor.


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