// 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/line.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/balance.h" #include "Dynamics/compressor.h" #include "Dynamics/crossfade.h" #include "Dynamics/limiter.h" /** Effects Modules */ #include "Effects/autowah.h" #include "Effects/bitcrush.h" #include "Effects/chorus.h" #include "Effects/decimator.h" #include "Effects/flanger.h" #include "Effects/fold.h" #include "Effects/overdrive.h" #include "Effects/reverbsc.h" #include "Effects/phaser.h" #include "Effects/pitchshifter.h" #include "Effects/sampleratereducer.h" #include "Effects/tremolo.h" /** Filter Modules */ #include "Filters/allpass.h" #include "Filters/atone.h" #include "Filters/biquad.h" #include "Filters/comb.h" #include "Filters/mode.h" #include "Filters/moogladder.h" #include "Filters/nlfilt.h" #include "Filters/svf.h" #include "Filters/tone.h" #include "Filters/fir.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/modalvoice.h" #include "PhysicalModeling/pluck.h" #include "PhysicalModeling/PolyPluck.h" #include "PhysicalModeling/resonator.h" #include "PhysicalModeling/KarplusString.h" #include "PhysicalModeling/stringvoice.h" /** Synthesis Modules */ #include "Synthesis/blosc.h" #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/jitter.h" #include "Utility/maytrig.h" #include "Utility/metro.h" #include "Utility/port.h" #include "Utility/samplehold.h" #include "Utility/smooth_random.h" #endif