baconpaul
- 15 skills
- 0 followers
- 11 hours ago last updated
- ▌
- ▌ Six Sines UI · baconpaulReference for the Six Sines synthesizer UI (src/ui/). Covers the editor and its patchMain binding, the PatchContinuous/PatchDiscrete data model, the createComponent factory, the panel/sub-panel navigation model, the DAHDSR/LFO/Modulation component templates, clipboard, presets and theming.
- ▌ Golden Source · baconpaulImplements the golden value (run-and-check or print-and-replace) testing pattern using Catch2 and an environment variable toggle. Adds exact numeric regression tests to a C++ project.
- ▌ Patch To Main · baconpaulThe SideQuest patch/patchMain architecture — the engine owns an audio-thread `patch` and a main-thread `patchMain`, the editor binds a `Patch&` to patchMain instead of owning a copy, and every host-facing main-thread call (stateSave/stateLoad/paramsValue/paramsFlush) reads patchMain, deleting the stateSave quiesce and spin-wait. The spec for new shells, and the migration steps for legacy plugins still on patchCopy.
- ▌ Six Sines Dsp · baconpaulReference for the Six Sines synthesizer DSP and synth engine (src/dsp/, src/synth/). Covers the node model and its patch/DSP mirroring, parameter IDs and streaming versions, signal flow, extended source modes, modulation routing, voice lifecycle, the patch/patchMain threading model, and the test suite.
- ▌ Sc Stream Enum · baconpaulAdd a new streamable enum to shortcircuit-xt using the STREAM_ENUM pattern. Generates DECLARE_ENUM_STRING in the header, toString/fromString implementations in the .cpp, and STREAM_ENUM in the appropriate *_traits.h file.
- ▌ Shortcircuit UI · baconpaulReference for the ShortCircuit XT UI layer (src/scxt-plugin/). Covers SCXTEditor structure, the dumb-terminal model, the attachment/offset pattern for wiring controls, sst-jucegui widgets, JSON layouts, begin-edit and undo gestures, and the workflow for adding a control.
- ▌ Sidequest Setup · baconpaulClone a new SideQuest audio-plugin shell from an existing clap-first sibling. Sets up submodules via fast local clones, adapts cmake + installer + CI, remaps the namespace/ids, strips the DSP and UI to a chosen set of params, and gets all four plugin formats building on the engine-owned patch/patchMain architecture.
- ▌ Spectrumworx UI · baconpaulReference for the SpectrumWorx interface (src/gui/). Covers the editor and the EditorHost inversion, the module rack and why it is recomputed rather than diffed, the painted skin and its palette rule, ModuleUI/ModuleControl, the headless editor harness and show-ui render tests, and the ownership rules the interface must not break.
- ▌ Spectrumworx Dsp · baconpaulReference for SpectrumWorx spectral effects and DSP (src/le/spectrumworx/effects/, src/le/math/). Covers the effect contract — the two classes, setup/process, ChannelData flavours, the working range, ChannelState, side chain and MIDI — the six-file registration, the test obligations a new effect inherits, and the traps. Routes to doc/tech/effect_contract.md, which is the authority.
- ▌ Sst Voicemanager · baconpaulReference for the sst-voicemanager library. Covers the responder contract, voice lifecycle, play modes (poly/mono/legato/piano), voice stealing, mono priority, hierarchical polyphony groups, continuation data, MPE, MIDI routing, realtime safety, and the test infrastructure.
- ▌ Sst Param Metadata · baconpaulReference for ParamMetaData in sst-basic-blocks. Covers display scales, modulation display, string conversion, FeatureState flags, preset builders (asPercent, asEnvelopeTime, as25SecondExpTime…), quantization, and the test suite.
- ▌ Shortcircuit Engine · baconpaulReference for the ShortCircuit XT engine (src/scxt-core/). Covers Engine/Patch/Part/Group/Zone hierarchy, voice management, DSP processors, modulation, group triggers, sample loading, undo, browser, and the test harness. Use before making engine or DSP changes.
- ▌ Spectrumworx Engine · baconpaulReference for the SpectrumWorx engine and plugin layer (src/core/, src/le/spectrumworx/engine/, src/le/parameters/). Covers the threading and ownership model, the dynamic parameter system, streaming and presets, latency, ports and side chain, MIDI, undo, and the layering rules. Routes to doc/tech/, which is the authority.
- ▌ Shortcircuit Streaming · baconpaulReference for ShortCircuit XT serialization and messaging (src/scxt-core/json/, src/scxt-core/messaging/). Covers taocpp/json trait patterns, SC_DESCRIBE metadata, c2s/s2c message pairs, the three-thread architecture, backward compatibility, and how to add a new parameter or message.