SynthLab SDK
SynthLab::WavetableSource Class Reference
Inheritance diagram for SynthLab::WavetableSource:
SynthLab::IWavetableSource

Public Member Functions

virtual const char * getWaveformName ()
 
virtual void selectTable (uint32_t midiNoteNumber)
 Objects that access the database will select a table based on the user's waveform selection. More...
 
virtual double readWaveTable (double oscClockIndex)
 Read a table at a normalized index where 0.0 is the start of the table and 1.0 is the end of it. More...
 
virtual uint32_t getWaveTableLength ()
 
void addWavetable (Wavetable *table, uint32_t midiNoteNumber)
 

Protected Attributes

Wavetable wavetableSet [NUM_MIDI_NOTES]
 
Wavetable selectedTable
 

Member Function Documentation

◆ getWaveformName()

virtual const char* SynthLab::WavetableSource::getWaveformName ( )
inlinevirtual
Returns
the table name (unique)

Implements SynthLab::IWavetableSource.

◆ getWaveTableLength()

virtual uint32_t SynthLab::WavetableSource::getWaveTableLength ( )
inlinevirtual
Returns
the table length

Implements SynthLab::IWavetableSource.

◆ readWaveTable()

virtual double SynthLab::WavetableSource::readWaveTable ( double  normalizedPhaseInc)
inlinevirtual

Read a table at a normalized index where 0.0 is the start of the table and 1.0 is the end of it.

  • the object that overrides this function must also implement any interpolation needed
Parameters
normalizedPhaseIncnormalized index in the table to access
Returns
the output value from the table, usually with interpoltion of some kind

Implements SynthLab::IWavetableSource.

◆ selectTable()

virtual void SynthLab::WavetableSource::selectTable ( uint32_t  midiNoteNumber)
inlinevirtual

Objects that access the database will select a table based on the user's waveform selection.

  • the note number is used to decode the selection to permit bandlimited sets of tables which is the normal operation in SynthLab
Parameters
midiNoteNumberthe note number corresponding to the currently rendered pitch

Implements SynthLab::IWavetableSource.


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