VAE - Virtual Audio Engine 1
Small Data Driven Audio Engine
tklb::ConvolverTpl< T > Class Template Reference

Multichannel version of the convolver. More...

#include <TConvolverFFT.hpp>

Collaboration diagram for tklb::ConvolverTpl< T >:

Public Types

using sample = T
 

Public Member Functions

 ConvolverTpl ()=default
 
template<typename T2 >
void load (const AudioBufferTpl< T2 > &buffer, const uint blockSize)
 Load a impulse response and prepare the convolution. More...
 
template<typename T2 >
void process (const AudioBufferTpl< T2 > &inBuf, AudioBufferTpl< T2 > &outBuf)
 Load a impulse response and prepare the convolution. More...
 

Private Types

using uchar = unsigned char
 
using uint = unsigned int
 

Private Attributes

ConvolverMonoTpl< T > mConvolvers [AudioBufferTpl< T >::MAX_CHANNELS]
 

Detailed Description

template<typename T>
class tklb::ConvolverTpl< T >

Multichannel version of the convolver.

Definition at line 218 of file TConvolverFFT.hpp.

Member Typedef Documentation

◆ sample

template<typename T >
using tklb::ConvolverTpl< T >::sample = T

Definition at line 224 of file TConvolverFFT.hpp.

◆ uchar

template<typename T >
using tklb::ConvolverTpl< T >::uchar = unsigned char
private

Definition at line 219 of file TConvolverFFT.hpp.

◆ uint

template<typename T >
using tklb::ConvolverTpl< T >::uint = unsigned int
private

Definition at line 220 of file TConvolverFFT.hpp.

Constructor & Destructor Documentation

◆ ConvolverTpl()

template<typename T >
tklb::ConvolverTpl< T >::ConvolverTpl ( )
default

Member Function Documentation

◆ load()

template<typename T >
template<typename T2 >
void tklb::ConvolverTpl< T >::load ( const AudioBufferTpl< T2 > &  buffer,
const uint  blockSize 
)
inline

Load a impulse response and prepare the convolution.

Definition at line 232 of file TConvolverFFT.hpp.

232 {
233 for (uchar c = 0; c < buffer.channels(); c++) {
234 mConvolvers[c].load(buffer, blockSize, c);
235 }
236 }
ConvolverMonoTpl< T > mConvolvers[AudioBufferTpl< T >::MAX_CHANNELS]
unsigned char uchar
Here is the call graph for this function:

◆ process()

template<typename T >
template<typename T2 >
void tklb::ConvolverTpl< T >::process ( const AudioBufferTpl< T2 > &  inBuf,
AudioBufferTpl< T2 > &  outBuf 
)
inline

Load a impulse response and prepare the convolution.

Definition at line 242 of file TConvolverFFT.hpp.

242 {
243 for (uchar c = 0; c < inBuf.channels(); c++) {
244 mConvolvers[c].process(inBuf, outBuf, c);
245 }
246 }
Here is the call graph for this function:

Member Data Documentation

◆ mConvolvers

template<typename T >
ConvolverMonoTpl<T> tklb::ConvolverTpl< T >::mConvolvers[AudioBufferTpl< T >::MAX_CHANNELS]
private

Definition at line 221 of file TConvolverFFT.hpp.


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