refactor(source): move every implementation into its module directory

- 36 files move into the module whose AGENTS.md already claimed them:
  Engine/, Synth/, Modulation/, Params/, Plugin/, GUI/, EffectUnits/, Resources/
- Source/engine, modulation, params, plugin and synth become Engine,
  Modulation, Params, Plugin and Synth, matching the directories that already
  hold code
- ExactCompare.h stays at the Source/ root as the one shared header
- SERUMALT_INCLUDE_DIRS adds one include directory per module, so the 31
  parent-relative includes become plain names with no path prefix
- the module AGENTS.md files list owned files instead of describing a move
  that had not happened, and README.md and AGENTS.md describe the real tree

Verified: the harness passes CTest, the Linux VST3 and Standalone link, the
Windows cross-build passes its module checks, each configure exposes only its
own targets, no first-party warning line appears, and the generated Windows
manifest is unchanged.
This commit is contained in:
biggy committed 2026-10-06 09:17:49 +02:00
1 parent facd5c5b5e
commit 4b0db50271
70 files changed
+115 -111

No files matched your search

+11 -22
View File
@@ -27,28 +27,17 @@ working builds and hands-on listening over elaborate test infrastructure.
```
Source/
PluginProcessor.{h,cpp} APVTS, presets, state, RAVE/UI-scale glue
PluginEditor.{h,cpp} Tabbed GUI, owned controls, scaling, previews
Params.{h,cpp} Parameter IDs, indexed groups, enums, mappings
Wavetable.{h,cpp} 256×2048 tables, prebuilt by the engine
Oscillator.{h,cpp} Morph/warp/unison oscillator
SubOscillator.{h,cpp} Sine/triangle sub
NoiseOscillator.{h,cpp} White/pink noise
Filter.{h,cpp} Seven filter models and cached coefficients
FilterBank.{h,cpp} Two slots and routing
Envelope.{h,cpp} ADSR with curve
LFO.{h,cpp} Continuous phase, sync and shape editing
ModulationMatrix.{h,cpp} Connections
FXProcessor.{h,cpp} Independent effect state per rack slot
EffectUnits/ Hyper, Chorus, Flanger, Phaser, Distortion, EQ,
Compressor, Delay, Reverb
MacroControls.{h,cpp} Four assignable macros
RAVEButton.{h,cpp} Render-time boost, without rewriting parameters
SynthVoice.{h,cpp} Per-voice oscillators, filters and envelopes
Engine.{h,cpp} 32 voices, MIDI timing, control snapshots, FX
GUI/ Controls and previews
Presets/FactoryPresets.cpp Factory preset definitions
Resources/ SVG assets
Engine/ Voice pool, MIDI timing, control snapshots, FX rack
Synth/ Wavetables, oscillators, filters, envelopes, LFOs, voice
Modulation/ Matrix, macros, RAVE
Params/ Parameter IDs, indexed groups, enums, mappings
Plugin/ AudioProcessor: APVTS, presets, state, RAVE/UI-scale glue
GUI/ Editor, controls and previews
EffectUnits/ FX rack and the nine effect units
Presets/ Factory preset definitions
Resources/ Theme, formatters and SVG assets
Tests/ Headless QA harness
ExactCompare.h Shared exact float comparison helpers
```
The engine splits rendering at MIDI event positions and into segments of at most