pub struct PluginFactoryWrapper<F> { /* private fields */ }Expand description
A wrapper around a given PluginFactoryImpl implementation.
This wrapper is required in order to expose a C FFI-compatible factory to the host, and is what
needs to be exposed by an Entry.
Implementations§
Source§impl<F: PluginFactoryImpl> PluginFactoryWrapper<F>
impl<F: PluginFactoryImpl> PluginFactoryWrapper<F>
Sourcepub const fn new(factory: F) -> Self
pub const fn new(factory: F) -> Self
Wraps a given PluginFactoryImpl instance.
Sourcepub const fn factory(&self) -> &F
pub const fn factory(&self) -> &F
Returns a shared reference to the wrapped PluginFactoryImpl.
Sourcepub fn as_raw_ptr(&self) -> *const clap_plugin_factory
pub fn as_raw_ptr(&self) -> *const clap_plugin_factory
Returns a raw CLAP plugin factory pointer, ready to be used by the host.
Trait Implementations§
Source§impl<'a, F: PluginFactoryImpl + 'a> FactoryImplementation<'a> for PluginFactoryWrapper<F>
impl<'a, F: PluginFactoryImpl + 'a> FactoryImplementation<'a> for PluginFactoryWrapper<F>
Source§type Factory = PluginFactory<'a>
type Factory = PluginFactory<'a>
The
Factory type this is able to provide.Source§type Wrapped = F
type Wrapped = F
The inner factory implementation type in the
FactoryWrapper returned by wrapperSource§fn wrapper(&self) -> &FactoryWrapper<clap_plugin_factory, F>
fn wrapper(&self) -> &FactoryWrapper<clap_plugin_factory, F>
Returns the
FactoryWrapper instance this type is able to provide.Auto Trait Implementations§
impl<F> Freeze for PluginFactoryWrapper<F>
impl<F> RefUnwindSafe for PluginFactoryWrapper<F>
impl<F> Send for PluginFactoryWrapper<F>
impl<F> Sync for PluginFactoryWrapper<F>
impl<F> Unpin for PluginFactoryWrapper<F>
impl<F> UnsafeUnpin for PluginFactoryWrapper<F>
impl<F> UnwindSafe for PluginFactoryWrapper<F>
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