Struct vst::api::AEffect

source ·
#[repr(C)]
pub struct AEffect {
Show 23 fields pub magic: i32, pub dispatcher: DispatcherProc, pub _process: ProcessProc, pub setParameter: SetParameterProc, pub getParameter: GetParameterProc, pub numPrograms: i32, pub numParams: i32, pub numInputs: i32, pub numOutputs: i32, pub flags: i32, pub reserved1: isize, pub reserved2: isize, pub initialDelay: i32, pub _realQualities: i32, pub _offQualities: i32, pub _ioRatio: f32, pub object: *mut c_void, pub user: *mut c_void, pub uniqueId: i32, pub version: i32, pub processReplacing: ProcessProc, pub processReplacingF64: ProcessProcF64, pub future: [u8; 56],
}
Expand description

Used with the VST API to pass around plugin information.

Fields§

§magic: i32

Magic number. Must be ['V', 'S', 'T', 'P'].

§dispatcher: DispatcherProc

Host to plug-in dispatcher.

§_process: ProcessProc

Accumulating process mode is deprecated in VST 2.4! Use processReplacing instead!

§setParameter: SetParameterProc

Set value of automatable parameter.

§getParameter: GetParameterProc

Get value of automatable parameter.

§numPrograms: i32

Number of programs (Presets).

§numParams: i32

Number of parameters. All programs are assumed to have this many parameters.

§numInputs: i32

Number of audio inputs.

§numOutputs: i32

Number of audio outputs.

§flags: i32

Bitmask made of values from api::PluginFlags.

use vst::api::PluginFlags;
let flags = PluginFlags::CAN_REPLACING | PluginFlags::CAN_DOUBLE_REPLACING;
// ...
§reserved1: isize

Reserved for host, must be 0.

§reserved2: isize

Reserved for host, must be 0.

§initialDelay: i32

For algorithms which need input in the first place (Group delay or latency in samples).

This value should be initially in a resume state.

§_realQualities: i32

Deprecated unused member.

§_offQualities: i32

Deprecated unused member.

§_ioRatio: f32

Deprecated unused member.

§object: *mut c_void

Void pointer usable by api to store object data.

§user: *mut c_void

User defined pointer.

§uniqueId: i32

Registered unique identifier (register it at Steinberg 3rd party support Web). This is used to identify a plug-in during save+load of preset and project.

§version: i32

Plug-in version (e.g. 1100 for v1.1.0.0).

§processReplacing: ProcessProc

Process audio samples in replacing mode.

§processReplacingF64: ProcessProcF64

Process double-precision audio samples in replacing mode.

§future: [u8; 56]

Reserved for future use (please zero).

Implementations§

Return handle to Plugin object. Only works for plugins created using this library. Caller is responsible for not calling this function concurrently.

Return handle to Info object. Only works for plugins created using this library.

Return handle to PluginParameters object. Only works for plugins created using this library.

Return handle to Editor object. Only works for plugins created using this library. Caller is responsible for not calling this function concurrently.

Drop the Plugin object. Only works for plugins created using this library.

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.