Deluge Firmware
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
DelayBuffer Class Reference

#include <DelayBuffer.h>

Collaboration diagram for DelayBuffer:
Collaboration graph

Public Member Functions

 DelayBuffer ()
 
 ~DelayBuffer ()
 
uint8_t init (uint32_t newRate, uint32_t failIfThisSize=0, bool includeExtraSpace=true)
 
void makeNativeRatePrecise ()
 
void makeNativeRatePreciseRelativeToOtherBuffer (DelayBuffer *otherBuffer)
 
void discard (bool beingDestructed=false)
 
void setupForRender (int32_t rate, DelayBufferSetup *setup)
 
int32_t getIdealBufferSizeFromRate (uint32_t newRate)
 
void empty ()
 
bool isActive ()
 
bool clearAndMoveOn ()
 
bool moveOn ()
 
void writeNative (int32_t toDelayL, int32_t toDelayR)
 
void writeNativeAndMoveOn (int32_t toDelayL, int32_t toDelayR, StereoSample **writePos)
 
void writeResampled (int32_t toDelayL, int32_t toDelayR, int32_t strength1, int32_t strength2, DelayBufferSetup *setup)
 
void write (int32_t toDelayL, int32_t toDelayR, int32_t strength1, int32_t strength2, DelayBufferSetup *setup)
 

Public Attributes

StereoSamplebufferStart
 
StereoSamplebufferEnd
 
StereoSamplebufferCurrentPos
 
uint32_t longPos
 
uint8_t lastShortPos
 
uint32_t nativeRate
 
uint32_t size
 
uint32_t sizeIncludingExtra
 
bool isResampling
 

Constructor & Destructor Documentation

◆ DelayBuffer()

DelayBuffer::DelayBuffer ( )

◆ ~DelayBuffer()

DelayBuffer::~DelayBuffer ( )

Member Function Documentation

◆ clearAndMoveOn()

bool DelayBuffer::clearAndMoveOn ( )
inline

◆ discard()

void DelayBuffer::discard ( bool  beingDestructed = false)

◆ empty()

void DelayBuffer::empty ( )

◆ getIdealBufferSizeFromRate()

int32_t DelayBuffer::getIdealBufferSizeFromRate ( uint32_t  newRate)

◆ init()

uint8_t DelayBuffer::init ( uint32_t  newRate,
uint32_t  failIfThisSize = 0,
bool  includeExtraSpace = true 
)

◆ isActive()

bool DelayBuffer::isActive ( )
inline

◆ makeNativeRatePrecise()

void DelayBuffer::makeNativeRatePrecise ( )

◆ makeNativeRatePreciseRelativeToOtherBuffer()

void DelayBuffer::makeNativeRatePreciseRelativeToOtherBuffer ( DelayBuffer otherBuffer)

◆ moveOn()

bool DelayBuffer::moveOn ( )
inline

◆ setupForRender()

void DelayBuffer::setupForRender ( int32_t  rate,
DelayBufferSetup setup 
)

◆ write()

void DelayBuffer::write ( int32_t  toDelayL,
int32_t  toDelayR,
int32_t  strength1,
int32_t  strength2,
DelayBufferSetup setup 
)
inline

◆ writeNative()

void DelayBuffer::writeNative ( int32_t  toDelayL,
int32_t  toDelayR 
)
inline

◆ writeNativeAndMoveOn()

void DelayBuffer::writeNativeAndMoveOn ( int32_t  toDelayL,
int32_t  toDelayR,
StereoSample **  writePos 
)
inline

◆ writeResampled()

void DelayBuffer::writeResampled ( int32_t  toDelayL,
int32_t  toDelayR,
int32_t  strength1,
int32_t  strength2,
DelayBufferSetup setup 
)
inline

Member Data Documentation

◆ bufferCurrentPos

StereoSample* DelayBuffer::bufferCurrentPos

◆ bufferEnd

StereoSample* DelayBuffer::bufferEnd

◆ bufferStart

StereoSample* DelayBuffer::bufferStart

◆ isResampling

bool DelayBuffer::isResampling

◆ lastShortPos

uint8_t DelayBuffer::lastShortPos

◆ longPos

uint32_t DelayBuffer::longPos

◆ nativeRate

uint32_t DelayBuffer::nativeRate

◆ size

uint32_t DelayBuffer::size

◆ sizeIncludingExtra

uint32_t DelayBuffer::sizeIncludingExtra

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