Deluge Firmware 1.3.0
Build date: 2025.08.14
Loading...
Searching...
No Matches
WaveTable Class Referencefinal
Inheritance diagram for WaveTable:
Collaboration diagram for WaveTable:

Public Member Functions

int32_t cloneFromSample (Sample *sample)
uint32_t render (int32_t *outputBuffer, int32_t numSamples, uint32_t phaseIncrementNow, uint32_t phase, bool doOscSync, uint32_t resetterPhase, uint32_t resetterPhaseIncrement, int32_t resetterDivideByPhaseIncrement, uint32_t retriggerPhase, int32_t waveIndex, int32_t waveIndexIncrement)
Error setup (Sample *sample, int32_t nativeNumSamplesPerCycle=0, uint32_t audioDataStartPosBytes=0, uint32_t audioDataLengthBytes=0, int32_t byteDepth=0, RawDataFormat rawDataFormat=RawDataFormat::NATIVE, WaveTableReader *reader=nullptr)
void deleteAllBandsAndData ()
void bandDataBeingStolen (WaveTableBandData *bandData)
bool mayBeStolen (void *thingNotToStealFrom=nullptr) override
void steal (char const *errorCode) override
Public Member Functions inherited from AudioFile
 AudioFile (AudioFileType newType)
Error loadFile (AudioFileReader *reader, bool isAiff, bool makeWaveTableWorkAtAllCosts)
virtual void finalizeAfterLoad (uint32_t fileSize)
void addReason ()
void removeReason (char const *errorCode)
StealableQueue getAppropriateQueue () const override
Public Member Functions inherited from Stealable
bool operator== (const Stealable &other) const
 Object equality is based on pointer equality.

Public Attributes

int32_t numCycles
int32_t numCyclesMagnitude
int32_t numCycleTransitionsNextPowerOf2
int32_t numCycleTransitionsNextPowerOf2Magnitude
int32_t waveIndexMultiplier
OrderedResizeableArrayWith32bitKey bands
Public Attributes inherited from AudioFile
String filePath
const AudioFileType type
uint8_t numChannels {}
String loadedFromAlternatePath
int32_t numReasonsToBeLoaded {}
Public Attributes inherited from Stealable
uint32_t lastTraversalNo = 0xFFFFFFFF

Protected Member Functions

void numReasonsIncreasedFromZero () override
void numReasonsDecreasedToZero (char const *errorCode) override

Private Member Functions

void doRenderingLoop (int32_t *__restrict__ thisSample, int32_t const *bufferEnd, int32_t firstCycleNumber, WaveTableBand *__restrict__ bandHere, uint32_t phase, uint32_t phaseIncrement, uint32_t waveIndexScaled, int32_t waveIndexIncrementScaled, const int16_t *__restrict__ kernel)
void doRenderingLoopSingleCycle (int32_t *__restrict__ thisSample, int32_t const *bufferEnd, WaveTableBand *__restrict__ bandHere, uint32_t phase, uint32_t phaseIncrement, const int16_t *__restrict__ kernel)

Additional Inherited Members

Public Types inherited from Stealable
using link_type = etl::bidirectional_link<0>
Static Public Member Functions inherited from AudioFile
static constexpr bool isSample (const AudioFile *file)
static constexpr bool isWaveTable (const AudioFile *file)

Member Function Documentation

◆ mayBeStolen()

bool WaveTable::mayBeStolen ( void * thingNotToStealFrom = nullptr)
overridevirtual

Implements Stealable.

◆ numReasonsDecreasedToZero()

void WaveTable::numReasonsDecreasedToZero ( char const * errorCode)
overrideprotectedvirtual

Reimplemented from AudioFile.

◆ numReasonsIncreasedFromZero()

void WaveTable::numReasonsIncreasedFromZero ( )
overrideprotectedvirtual

Reimplemented from AudioFile.

◆ steal()

void WaveTable::steal ( char const * errorCode)
overridevirtual

Implements Stealable.


The documentation for this class was generated from the following files:
  • src/deluge/storage/wave_table/wave_table.h
  • src/deluge/storage/wave_table/wave_table.cpp