55#define LOADED_EFFECTS_H
66#pragma once
77
8+ #include "Effect-Modules/base_effect_module.h"
9+
10+ // Include all effect modules
811#include "Effect-Modules/autopan_module.h"
912#include "Effect-Modules/chopper_module.h"
1013#include "Effect-Modules/chorus_module.h"
1821#include "Effect-Modules/overdrive_module.h"
1922#include "Effect-Modules/peq_module.h"
2023// #include "Effect-Modules/pitch_shifter_module.h" // Commented out to make room in DTCRAM
21- #include "Effect-Modules/reverb_module.h"
22- #include "Effect-Modules/tuner_module.h"
23-
2424#include "Effect-Modules/amp_module.h"
2525#include "Effect-Modules/cloudseed_module.h" // Takes up significant SDRAM (about 30%)
2626#include "Effect-Modules/nam_module.h"
27+ #include "Effect-Modules/reverb_module.h"
28+ #include "Effect-Modules/tuner_module.h"
2729// #include "Effect-Modules/midi_keys_module.h"
2830#include "Effect-Modules/delay_module.h"
2931// #include "Effect-Modules/pluckecho_module.h"
3234#include "Effect-Modules/polyoctave_module.h"
3335#include "Effect-Modules/scifi_module.h"
3436#include "Effect-Modules/spectral_delay_module.h"
35- #include "Effect-Modules/spectral_delay_module.h"
36- //#include "Effect-Modules/fm_keys_module.h"
37+ // #include "Effect-Modules/fm_keys_module.h"
3738#include "Effect-Modules/granulardelay_module.h"
3839
3940void load_effects (int & availableEffectsCount , BaseEffectModule * * & availableEffects ) {
40- // Make sure this count matches the maxindex - 1 (count) of effects that get
41- // added to the array
42- availableEffectsCount = 23 ;
43- availableEffects = new BaseEffectModule * [availableEffectsCount ];
44- availableEffects [0 ] = new ModulatedTremoloModule ();
45- availableEffects [1 ] = new OverdriveModule ();
46- availableEffects [2 ] = new AutoPanModule ();
47- availableEffects [3 ] = new ChorusModule ();
48- availableEffects [4 ] = new ChopperModule ();
49- availableEffects [5 ] = new ReverbModule ();
50- availableEffects [6 ] = new MultiDelayModule ();
51- availableEffects [7 ] = new MetroModule ();
52- availableEffects [8 ] = new TunerModule ();
53- // availableEffects[9] = new PitchShifterModule();
54- availableEffects [9 ] = new CompressorModule ();
55- availableEffects [10 ] = new LooperModule ();
56- availableEffects [11 ] = new GraphicEQModule ();
57- availableEffects [12 ] = new ParametricEQModule ();
58- availableEffects [13 ] = new NoiseGateModule ();
41+ // clang-format off
42+ static BaseEffectModule * effectList [] = {
43+ new ModulatedTremoloModule (),
44+ new OverdriveModule (),
45+ new AutoPanModule (),
46+ new ChorusModule (),
47+ new ChopperModule (),
48+ new ReverbModule (),
49+ new MultiDelayModule (),
50+ new MetroModule (),
51+ new TunerModule (),
52+ // new PitchShifterModule(),
53+ new CompressorModule (),
54+ new LooperModule (),
55+ new GraphicEQModule (),
56+ new ParametricEQModule (),
57+ new NoiseGateModule (),
58+ new CloudSeedModule (),
59+ new AmpModule (),
60+ new DelayModule (),
61+ new NamModule (),
62+ new SciFiModule (),
63+ new PolyOctaveModule (),
64+ new SpectralDelayModule (),
65+ new DistortionModule (),
66+ new GranularDelayModule (),
5967
60- availableEffects [14 ] = new CloudSeedModule ();
61- availableEffects [15 ] = new AmpModule ();
62- availableEffects [16 ] = new DelayModule ();
63- availableEffects [17 ] = new NamModule ();
64- availableEffects [18 ] = new SciFiModule ();
65- availableEffects [19 ] = new PolyOctaveModule ();
66- availableEffects [20 ] = new SpectralDelayModule ();
67- availableEffects [21 ] = new DistortionModule ();
68- availableEffects [22 ] = new GranularDelayModule ();
69- // The following require a MIDI keyboard
70- // availableEffects[23] = new MidiKeysModule();
71- // availableEffects[24] = new PluckEchoModule();
72- // availableEffects[25] = new StringKeysModule();
73- // availableEffects[26] = new ModalKeysModule();
74- // availableEffects[22] = new FmKeysModule();
68+ // The following require a MIDI keyboard
69+ // new MidiKeysModule(),
70+ // new PluckEchoModule(),
71+ // new StringKeysModule(),
72+ // new ModalKeysModule()
73+ };
74+ // clang-format on
75+
76+ availableEffectsCount = sizeof (effectList ) / sizeof (effectList [0 ]);
77+ availableEffects = new BaseEffectModule * [availableEffectsCount ];
78+ for (int i = 0 ; i < availableEffectsCount ; ++ i ) {
79+ availableEffects [i ] = effectList [i ];
80+ }
7581}
7682
77- #endif
83+ #endif
0 commit comments