Expand description
Core plugin trait definitions.
This module defines the two-phase plugin lifecycle:
-
Plugin(unprepared state): Holds parameters, created before audio config is known. Transforms into a processor viaPlugin::prepare()when configuration arrives. -
AudioProcessor(prepared state): Ready for audio processing with real sample rate and buffer configuration. Created byPlugin::prepare(), can return to unprepared state viaAudioProcessor::unprepare()for sample rate changes.
This design eliminates placeholder values by making it impossible to process audio until proper configuration is available.
Structs§
- Audio
Setup - Standard audio setup configuration with sample rate and max buffer size.
- BusInfo
- Information about an audio bus.
- BusLayout
- Bus layout information for plugins that need channel configuration.
- Full
Audio Setup - Full audio setup including bus layout information.
- Midi1
Assignment - MIDI 1.0 CC assignment.
- Midi2
Assignment - MIDI 2.0 controller assignment.
- Midi
Controller Assignment - Base assignment info for MIDI controller → parameter mapping.
- NoConfig
- Configuration for plugins that don’t need audio setup information.
Enums§
- BusType
- Audio bus type.
Traits§
- Audio
Processor - The prepared processor - ready for audio processing.
- HasParams
- Trait for types that hold parameters.
- Plugin
- The unprepared plugin - holds parameters before audio config is known.
- Processor
Config - Marker trait for processor configuration types.