Krotos Modules 3
Loading...
Searching...
No Matches
krotos::IRConvolver Class Reference

Used in the ConvolutionReverb class, performs single-channel convolution. More...

#include <IRConvolver.h>

Public Member Functions

 IRConvolver ()
 
virtual ~IRConvolver ()
 
FloatBuffer::Ptr getImpulseResponse () const
 
void clearImpulseResponse ()
 
ConvolvergetConvolver ()
 
void setConvolver (Convolver *convolver)
 
void resetConvolver ()
 
void resetConvolver (FloatBuffer::Ptr irBuffer, float headBlockSize, float tailBlockSize)
 
void clearConvolver ()
 
void process (const float *input, float *output, int len)
 

Private Attributes

float m_headBlockSize
 
float m_tailBlockSize
 
FloatBuffer::Ptr m_irBuffer
 
CriticalSection m_convolverMutex
 
std::unique_ptr< Convolverm_convolver
 

Detailed Description

Used in the ConvolutionReverb class, performs single-channel convolution.

Constructor & Destructor Documentation

◆ IRConvolver()

krotos::IRConvolver::IRConvolver ( )

◆ ~IRConvolver()

krotos::IRConvolver::~IRConvolver ( )
virtual

Member Function Documentation

◆ clearConvolver()

void krotos::IRConvolver::clearConvolver ( )

◆ clearImpulseResponse()

void krotos::IRConvolver::clearImpulseResponse ( )

◆ getConvolver()

Convolver * krotos::IRConvolver::getConvolver ( )

◆ getImpulseResponse()

FloatBuffer::Ptr krotos::IRConvolver::getImpulseResponse ( ) const

◆ process()

void krotos::IRConvolver::process ( const float * input,
float * output,
int len )

◆ resetConvolver() [1/2]

void krotos::IRConvolver::resetConvolver ( )

◆ resetConvolver() [2/2]

void krotos::IRConvolver::resetConvolver ( FloatBuffer::Ptr irBuffer,
float headBlockSize,
float tailBlockSize )

◆ setConvolver()

void krotos::IRConvolver::setConvolver ( Convolver * convolver)

Member Data Documentation

◆ m_convolver

std::unique_ptr<Convolver> krotos::IRConvolver::m_convolver
private

◆ m_convolverMutex

CriticalSection krotos::IRConvolver::m_convolverMutex
private

◆ m_headBlockSize

float krotos::IRConvolver::m_headBlockSize
private

◆ m_irBuffer

FloatBuffer::Ptr krotos::IRConvolver::m_irBuffer
private

◆ m_tailBlockSize

float krotos::IRConvolver::m_tailBlockSize
private

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