pub struct PluginInstance {
pub id: PluginInstanceId,
pub descriptor: PluginDescriptor,
pub status: PluginStatus,
pub sandbox: SandboxProcess,
pub presets: PresetBank,
pub bypassed: bool,
pub output_gain: f32,
/* private fields */
}Expand description
Una instancia completa de un plugin en la DAW.
Combina el bridge (CLAP o VST3), el sandbox, los presets y el estado de automatización.
Fields§
§id: PluginInstanceId§descriptor: PluginDescriptor§status: PluginStatus§sandbox: SandboxProcess§presets: PresetBank§bypassed: boolBypass global de la instancia
output_gain: f32Volumen de salida [0.0, 2.0]
Implementations§
Source§impl PluginInstance
impl PluginInstance
pub fn new( id: PluginInstanceId, descriptor: PluginDescriptor, bridge: Box<dyn PluginBridge>, sandbox_config: SandboxConfig, ) -> Self
Sourcepub fn activate(
&mut self,
sample_rate: f64,
min_block: usize,
max_block: usize,
) -> bool
pub fn activate( &mut self, sample_rate: f64, min_block: usize, max_block: usize, ) -> bool
Activa el plugin para procesamiento de audio.
pub fn deactivate(&mut self)
pub fn is_active(&self) -> bool
Sourcepub fn process(&mut self, data: &mut PluginProcessData<'_>) -> bool
pub fn process(&mut self, data: &mut PluginProcessData<'_>) -> bool
Procesa un bloque de audio. Si bypassed, copia input → output directamente. Solo llamar desde el audio thread.
Sourcepub fn params(&mut self) -> &[ParamDescriptor]
pub fn params(&mut self) -> &[ParamDescriptor]
Devuelve los descriptores de parámetros (cacheados).
pub fn get_param_state(&self) -> ParamState
pub fn set_param_state(&mut self, state: &ParamState)
Sourcepub fn save_preset(&mut self, name: impl Into<String>) -> usize
pub fn save_preset(&mut self, name: impl Into<String>) -> usize
Guarda el estado actual como preset.
Sourcepub fn load_preset(&mut self, index: usize) -> bool
pub fn load_preset(&mut self, index: usize) -> bool
Carga un preset por índice.
pub fn has_gui(&self) -> bool
pub fn open_gui(&mut self, parent: *mut c_void) -> bool
pub fn close_gui(&mut self)
Sourcepub fn save_state(&self) -> PluginSaveState
pub fn save_state(&self) -> PluginSaveState
Serializa el estado del plugin para guardar en el proyecto.
Sourcepub fn load_save_state(&mut self, save: &PluginSaveState) -> bool
pub fn load_save_state(&mut self, save: &PluginSaveState) -> bool
Restaura el estado del plugin desde un save state.
Auto Trait Implementations§
impl Freeze for PluginInstance
impl !RefUnwindSafe for PluginInstance
impl Send for PluginInstance
impl !Sync for PluginInstance
impl Unpin for PluginInstance
impl UnsafeUnpin for PluginInstance
impl !UnwindSafe for PluginInstance
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more