#ifndef __PRESET_H__ #define __PRESET_H__ #include "dsp/oscillator.h" #include "dsp/filter.h" #include "dsp/adsr.h" struct Preset { typedef struct { uint8_t attack; uint8_t decay; uint8_t sustain; uint8_t release; } Envelope; uint8_t osc1Mode; uint8_t osc2Mode; uint8_t oscMix; struct { uint8_t type; uint8_t slope; uint8_t freq; uint8_t Q; } filter; Envelope ampEnv; Envelope fltEnv; }; static const Preset DEFAULT_PRESET = { .osc1Mode = Oscillator::MODE_SAW, .osc2Mode = Oscillator::MODE_SAW, .oscMix = 0, .filter = { .type = Filter::TYPE_LP, .slope = Filter::SLOPE_24, .freq = 127, .Q = 0, }, .ampEnv = { .attack = 0, .decay = 0, .sustain = 127, .release = 0 }, .fltEnv = { .attack = 0, .decay = 0, .sustain = 127, .release = 0 } }; #endif