#pragma once #include #include "../Params.h" #include "../ModulationMatrix.h" namespace serum { // =========================================================================== // A factory preset: a name plus a sparse map of parameter values, modulation // connections and macro assignments. Unset parameters keep their defaults. // =========================================================================== struct FactoryPreset { juce::String name; std::vector> params; std::vector mods; struct MacroAssign { int macro = 0; ModTarget target = ModTarget::None; float depth = 0.0f; }; std::vector macroAssigns; }; // All 16 factory presets, in program order. const std::vector& getFactoryPresets(); } // namespace serum