pub enum HostResponse {
Success {
message: String,
},
Error {
message: String,
},
Crashed {
message: String,
},
AudioOutput {
outputs: Vec<Vec<f32>>,
output_midi: Vec<MidiEvent>,
},
ParameterValue {
value: f64,
},
ParameterString {
value: String,
},
Parameters {
params: Vec<Parameter>,
},
State {
data: Vec<u8>,
},
GuiCreated {
width: i32,
height: i32,
},
PluginInfo {
vendor: String,
name: String,
version: String,
category: String,
uid: String,
has_gui: bool,
audio_inputs: i32,
audio_outputs: i32,
output_channels: i32,
has_midi_input: bool,
has_midi_output: bool,
},
NoteStarted {
note_id: i32,
},
NoteExpressions {
expressions: Vec<NoteExpressionInfo>,
},
}Expand description
Responses from the isolated plugin process
Variants§
Success
Operation succeeded with message
Error
Operation failed with error
Crashed
Plugin crashed
AudioOutput
Per-channel audio output data ([channel][frame]), plus any MIDI the plugin
emitted during the block (arpeggiators, MPE, etc.).
Fields
ParameterValue
A single parameter value (normalized).
ParameterString
A formatted parameter display string.
Parameters
A list of parameters.
State
Opaque plugin state bytes (reply to SaveState).
GuiCreated
The isolated editor window was created (reply to CreateGui); carries the
plugin-reported editor size so the host can report it without a second round-trip.
PluginInfo
Plugin information
Fields
NoteStarted
A note was started (reply to NoteOn); carries the helper-allocated raw note id.
NoteExpressions
The per-note expressions the plugin advertises (reply to NoteExpressions).
Fields
expressions: Vec<NoteExpressionInfo>The advertised note-expression dimensions.