#[repr(C)]pub struct LV2_Lib_Descriptor {
pub handle: LV2_Lib_Handle,
pub size: u32,
pub cleanup: Option<unsafe extern "C" fn(handle: LV2_Lib_Handle)>,
pub get_plugin: Option<unsafe extern "C" fn(handle: LV2_Lib_Handle, index: u32) -> *const LV2_Descriptor>,
}Expand description
Descriptor for a plugin library.
To access a plugin library, the host creates an LV2_Lib_Descriptor via the lv2_lib_descriptor() function in the shared object.
Fields§
§handle: LV2_Lib_HandleOpaque library data which must be passed as the first parameter to all the methods of this struct.
size: u32The total size of this struct. This allows for this struct to be expanded in the future if necessary. This MUST be set by the library to sizeof(LV2_Lib_Descriptor). The host MUST NOT access any fields of this struct beyond get_plugin() unless this field indicates they are present.
cleanup: Option<unsafe extern "C" fn(handle: LV2_Lib_Handle)>Destroy this library descriptor and free all related resources.
get_plugin: Option<unsafe extern "C" fn(handle: LV2_Lib_Handle, index: u32) -> *const LV2_Descriptor>Plugin accessor.
Plugins are accessed by index using values from 0 upwards. Out of range
indices MUST result in this function returning NULL, so the host can
enumerate plugins by increasing index until NULL is returned.
Trait Implementations§
Source§impl Clone for LV2_Lib_Descriptor
impl Clone for LV2_Lib_Descriptor
Source§fn clone(&self) -> LV2_Lib_Descriptor
fn clone(&self) -> LV2_Lib_Descriptor
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more