Skip to main content

Module engine

Module engine 

Source
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.
OscSurfaceEntry
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§

ControlEvent
Hardware control event from a physical interface (knob, button, fader, etc.).
EventPattern
A pattern for matching controller events.
MidiNoteKind
What aspect of a MIDI note event to extract for mapping.
MidiTransportKind
MIDI transport state.
ParameterMapping
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§

BoxedModule
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.