SynthLab SDK
|
Very specilized and very small objects that handle the most fundamental implementations in the synth. This includes timer, ramp modulator, cross-fade-holder objects and many more. More...
Classes | |
class | SynthLab::BasicLookupTables |
Very basic lookup table object. More... | |
class | SynthLab::DynamicTableSource |
Storage for one dynamic table source; a wavetable that is created dynamically at load time, rather than being loaded from a static resource or table array. More... | |
class | SynthLab::ExciterEG |
Special purpose EG just for the Karplus Strong exciter. More... | |
class | SynthLab::Exciter |
Special purpose object for use as Karplus Strong exciter. More... | |
class | SynthLab::SimpleLPF |
Encapsulates a tiny first order, all-pole LPF object. More... | |
class | SynthLab::LogPeakDetector |
Encapsulates McNally's peak detector with added LPF smoothing (optional) More... | |
class | SynthLab::LinPeakDetector |
Encapsulates McNally's peak detector with added LPF smoothing (optional) More... | |
class | SynthLab::Limiter |
Implements a custom peak limiter designed especially for self oscillating filters whose outputs are > 0dBFS. More... | |
class | SynthLab::ModMatrix |
Very customizable modulation matrix object. More... | |
class | SynthLab::PCMSample |
Opens a WAV file and extracts contents into a floating point buffer, regardless of original datatypes in file. After parsing the file, use const float* getSampleBuffer() to acces the read-only buffer of data. The following types are supported: More... | |
class | SynthLab::WaveFolder |
Opens a folder full of WAV files and gleans information about the files to prep them for parsing and having their sample guts extracted. This object can figure out MIDI unity note numbers from the WAV file names (e.g. Dagga_A#4.wav). This object is used to parse folders of samples to build patches for sample based synths. More... | |
class | SynthLab::Resonator |
Special purpose object for use as Karplus Strong resonator. More... | |
class | SynthLab::JumpTable< T > |
A customized circular buffer for the wave sequencer object. This is identical to the CircularBuffer object in the FX plugin book. More... | |
class | SynthLab::LaneStep |
Holds all the information needed for one step of one lane in the wave sequencer. More... | |
class | SynthLab::SineTableSource |
Storage for one static sinusoidal table source; stores a single sine table that is used for all notes. More... | |
class | SynthLab::AudioBuffer |
Encapsulates the audio buffering requirements of any module that uses audio samples for input and/or output. More... | |
class | SynthLab::SynthClock |
Compact modulo counter with wrapping used as the timebase for all oscillators. More... | |
class | SynthLab::Timer |
Ultra compact timer object that is used for many different functionalities. More... | |
class | SynthLab::XFader |
Crossfades two values (from A to B) More... | |
class | SynthLab::XHoldFader |
Crossfades two values (from A to B) and then holds B for some amount of time. More... | |
class | SynthLab::SlewLimiter |
Implements a simple slew limiter using a one pole lowpass filter. More... | |
class | SynthLab::Synchronizer |
This is a very specialized object that performs the hard-sync operation using two SynthClocks. More... | |
class | SynthLab::RampModulator |
This is a tiny modulator object that produces an output that ramps up or down linearly between two values over a specified time in milliseconds. More... | |
class | SynthLab::GlideModulator |
Specialized version of the RampModulator, with nearly identically named functions to peform the portamento operation (aka glide modulation) More... | |
class | SynthLab::NoiseGenerator |
Simple object that generates white, gaussian white or pink noise. More... | |
struct | SynthLab::WavetableDatabase |
Object that acts as the wavetable database, as shared synth-wide resource. You should study this especially if you want to implement your own database with your own wavetable formats, etc... More... | |
struct | SynthLab::PCMSampleDatabase |
Object that acts as the PCM sample database, as shared synth-wide resource. You should study this especially if you want to implement your own database with your own PCM sample formats, etc... More... | |
class | SynthLab::SynthProcessInfo |
This structure holds all of the information needed to for the plugin framework to send MIDI information into the engine, and receive rendered audio samples that result. More... | |
class | SynthLab::MidiInputData |
Holds all MIDI input data values. More... | |
class | SynthLab::Modulators |
Implements a modulator object. More... | |
class | SynthLab::ModuleCore |
Abstract base class that encapsulates functionality of a module core; used with the Module-Core paradigm. More... | |
class | SynthLab::SynthModule |
Abstract base class that encapsulates functionality of a module; used with the Module-Core paradigm. More... | |
class | SynthLab::SynthLabPCMSource |
Storage for a set of PCM samples that constitute a patch or instrument. More... | |
class | SynthLab::StaticTableSource |
Storage for one static table source; a static table is pre-compiled into the synth, or (optionally) read from a file. The "source" stores a set of these tables to maximize frequency content while prohibiting aliasing. More... | |
class | SynthLab::DrumWTSource |
Storage for one static table source, specifically for drums which are pitchless and one-shot. More... | |
Very specilized and very small objects that handle the most fundamental implementations in the synth. This includes timer, ramp modulator, cross-fade-holder objects and many more.