Expand description
Control and event mapping Control and automation subsystem.
Provides event mapping (MIDI/OSC → parameters), automaton-based modulation (LFO, envelopes), and a two-thread model with lock-free queues for control → signal communication.
Re-exports§
pub use crate::automaton::EnvelopeAutomaton;pub use crate::automaton::LfoAutomaton;pub use crate::automaton::LfoWaveform;pub use crate::automaton::Range;
Structs§
- Mapping
- A complete mapping from an input event to a target parameter, with a value transform.
- NoAction
- A unit action for automatons that need no external action per step.
- OscSurface
Entry - A single entry in an OSC control surface, binding an OSC path to an event pattern.
- Servo
- Bridges an automaton to a graph parameter, stepping on every clock tick and sending control commands to the signal graph.
- Target
- The destination of an event mapping: a specific parameter on a specific graph node.
Enums§
- Control
Event - Hardware control event from a physical interface (knob, button, fader, etc.).
- Event
Pattern - A pattern for matching controller events.
- Midi
Note Kind - What aspect of a MIDI note event to extract for mapping.
- Midi
Transport Kind - MIDI transport state.
- Parameter
Mapping - Transfer function for mapping raw automaton output [0,1] to parameter space.
- Transform
- Transfer function applied to a normalized [0,1] value before scaling to parameter range.
Traits§
- Automaton
- Core trait for automatons — stateful signal generators that advance per step.
- Module
- Unified interface for sensor and control modules (MIDI hubs, OSC servers, etc.).
Functions§
- midi_cc
- Convenience constructor for a MIDI control change mapping.
- midi_
note - Convenience constructor for a MIDI note mapping.
- osc_
address - Convenience constructor for an OSC address mapping.
Type Aliases§
- Boxed
Module - Type-erased, heap-allocated reference to any module.
- OscSurface
- A list of OSC address → event mappings forming a control surface layout.
- Time
- Time in seconds, used for automaton clocks and timekeeping.