Deluge Firmware 1.3.0
Build date: 2025.04.16
Loading...
Searching...
No Matches
DelayBuffer Class Reference
Collaboration diagram for DelayBuffer:

Classes

struct  ResampleConfig
 

Public Member Functions

Error init (uint32_t newRate, uint32_t failIfThisSize=0, bool includeExtraSpace=true)
 
constexpr void invalidate ()
 
void makeNativeRatePrecise ()
 
void makeNativeRatePreciseRelativeToOtherBuffer (const DelayBuffer &otherBuffer)
 
void discard ()
 
template<typename C>
constexpr int32_t advance (C callback)
 
template<typename C>
constexpr int32_t retreat (C callback)
 
void setupForRender (int32_t rate)
 
constexpr bool isActive () const
 
bool clearAndMoveOn ()
 
bool moveOn ()
 
bool moveBack ()
 
void writeNative (StereoSample toDelay)
 
void writeNativeAndMoveOn (StereoSample toDelay, StereoSample **writePos)
 
void write (StereoSample toDelay, int32_t strength1, int32_t strength2)
 
void writeResampled (StereoSample toDelay, int32_t strength1, int32_t strength2)
 
constexpr bool isNative () const
 
constexpr bool resampling () const
 
constexpr uint32_t nativeRate () const
 
constexpr StereoSamplecurrent () const
 
constexpr StereoSamplebegin () const
 
constexpr StereoSampleend () const
 
constexpr size_t size () const
 
void clear ()
 
constexpr void setCurrent (StereoSample *sample)
 

Static Public Member Functions

static std::pair< int32_t, bool > getIdealBufferSizeFromRate (uint32_t rate)
 

Public Attributes

uint32_t longPos
 
uint8_t lastShortPos
 
size_t sizeIncludingExtra
 
std::optional< ResampleConfigresample_config_ {}
 

Static Public Attributes

static constexpr size_t kMaxSize = 88200
 
static constexpr size_t kMinSize = 1
 
static constexpr size_t kNeutralSize = 16384
 

Private Member Functions

void setupResample ()
 

Private Attributes

uint32_t native_rate_ = 0
 
StereoSamplestart_ = nullptr
 
StereoSampleend_
 
StereoSamplecurrent_
 
size_t size_
 

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