// DaisySP is a DSP Library targeted at the Electrosmith Daisy Product Line. // Author: Stephen Hensley, 2019 // // However, this is decoupled from the hardware in such a way that it // should be useful outside of the ARM context with different build configurations. // // A few general notes about the contents of the library: // - all memory usage is static. // - in cases of potentially large memory usage: the user will either supply a buffer and a size, or the class will be a template that can have size set at compile time. // - all modules will have an Init() function, and a Process() function. // - all modules, unless otherwise noted, will process a single sample at a time. // - all processing will be done with 'float' type unless otherwise noted. // #pragma once #ifndef DSYSP_H #define DSYSP_H /** Control Modules */ #include "Control/adenv.h" #include "Control/adsr.h" #include "Control/phasor.h" /** Drum Modules */ #include "Drums/analogbassdrum.h" #include "Drums/analogsnaredrum.h" #include "Drums/hihat.h" #include "Drums/synthbassdrum.h" #include "Drums/synthsnaredrum.h" /** Dynamics Modules */ #include "Dynamics/crossfade.h" #include "Dynamics/limiter.h" /** Effects Modules */ #include "Effects/autowah.h" #include "Effects/chorus.h" #include "Effects/decimator.h" #include "Effects/flanger.h" #include "Effects/overdrive.h" #include "Effects/pitchshifter.h" #include "Effects/phaser.h" #include "Effects/sampleratereducer.h" #include "Effects/tremolo.h" #include "Effects/wavefolder.h" /** Filter Modules */ #include "Filters/ladder.h" #include "Filters/onepole.h" #include "Filters/svf.h" #include "Filters/fir.h" #include "Filters/soap.h" /** Noise Modules */ #include "Noise/clockednoise.h" #include "Noise/dust.h" #include "Noise/fractal_noise.h" #include "Noise/grainlet.h" #include "Noise/particle.h" #include "Noise/whitenoise.h" /** Physical Modeling Modules */ #include "PhysicalModeling/drip.h" #include "PhysicalModeling/KarplusString.h" #include "PhysicalModeling/modalvoice.h" #include "PhysicalModeling/resonator.h" #include "PhysicalModeling/stringvoice.h" /** Sampling Modules */ #include "Sampling/granularplayer.h" /** Synthesis Modules */ #include "Synthesis/fm2.h" #include "Synthesis/formantosc.h" #include "Synthesis/harmonic_osc.h" #include "Synthesis/oscillator.h" #include "Synthesis/oscillatorbank.h" #include "Synthesis/variablesawosc.h" #include "Synthesis/variableshapeosc.h" #include "Synthesis/vosim.h" #include "Synthesis/zoscillator.h" /** Utility Modules */ #include "Utility/dcblock.h" #include "Utility/delayline.h" #include "Utility/dsp.h" #include "Utility/looper.h" #include "Utility/maytrig.h" #include "Utility/metro.h" #include "Utility/samplehold.h" #include "Utility/smooth_random.h" /** LGPL Modules */ #ifdef USE_DAISYSP_LGPL #include "daisysp-lgpl.h" #endif #endif