Expand description
Common plugin descriptors, state, and graph adapters.
use sim_lib_plugin_core::{
ParameterDescriptor, PluginDescriptor, PluginFormat, PluginState,
};
let descriptor = PluginDescriptor::audio_effect(
PluginFormat::Sim,
"org.sim.doc-gain",
"Doc Gain",
2,
)
.unwrap()
.with_parameter(ParameterDescriptor::new(0, "gain", "Gain", 0.0, 2.0, 1.0).unwrap());
assert_eq!(descriptor.parameter(0).unwrap().plain_to_normalized(1.0), 0.5);
let mut state = PluginState::new();
state.set_param(0, 1.0);
let rebuilt = PluginState::from_expr(&state.to_expr()).unwrap();
assert_eq!(rebuilt.param(0), Some(1.0));Macros§
- forward_
plugin_ instance - Implement
PluginInstancefor a$ty<P>newtype whose only relevant field isinner: ProcessorPlugin<P>, forwarding all six methods to it. The clap, lv2, and vst3 exported-processor adapters shared this forward block verbatim before OVERLAP6.15. Call it at each adapter, whereProcessor,ProcessBlock, andPrepareConfig(fromsim_lib_audio_graph_core) and the plugin-core trait types are already in scope.
Structs§
- Capability
Set - Granted audio plugin capabilities for loader entry points.
- Hosted
Plugin Processor - Adapts a
PluginInstanceinto an audio-graphProcessor. - Parameter
Descriptor - A single automatable plugin parameter and its value range.
- Plugin
Descriptor - A plugin’s full static description: identity, metadata, ports, parameters, and reported latency.
- Plugin
Descriptor Record - A runtime citizen wrapping a
PluginDescriptorin its encodedExprform. - Plugin
Id - A plugin’s stable identity: its format paired with a backend-stable id.
- Plugin
Load Spec - A request to load a plugin through a specific backend format.
- Plugin
State - A plugin’s persistable state: parameter values plus opaque keyed data.
- Processor
Plugin - Presents an audio-graph
Processoras aPluginInstance.
Enums§
- Audio
Plugin Capability - Privileged audio plugin operations exposed by host adapters.
- Parameter
Kind - The value domain a parameter exposes.
- Plugin
Format - The host backend format a plugin is loaded through.
Traits§
- Plugin
Instance - A live, format-agnostic plugin instance the host can prepare and run.
Functions§
- install_
plugin_ core_ lib - Installs the plugin-core surface pack into the runtime context.
- plugin_
core_ symbols - Returns the qualified export symbols the plugin-core lib publishes.
- plugin_
descriptor_ class_ symbol - Returns the class symbol (
plugin-core/PluginDescriptor) under whichPluginDescriptorRecordis registered.