[−][src]Struct kpal_plugin::VTable
A table of function pointers that comprise the plugin API for the foreign function interface.
By default, functions in the VTable return a number that represents a status code that maps onto a particular reason for an error. All functions should use the same mapping between status code and reason.
Functions that return values that do not represent status codes have names that end in the characters '_ns' that stand for "no status."
Fields
plugin_free: extern "C" fn(_: *mut PluginData)Frees the memory associated with a plugin's data.
plugin_init: unsafe extern "C" fn(_: *mut PluginData) -> c_intInitializes a plugin.
This method is distinct from the kpal_plugin_new FFI call in that it actually
communicates with the hardware, whereas kpal_plugin_new is used merely to create the
plugin data structures.
error_message_ns: extern "C" fn(_: c_int) -> *const c_ucharReturns an error message associated with a Plugin error code.
attribute_count: unsafe extern "C" fn(plugin_data: *const PluginData, count: *mut size_t) -> c_intReturns the number of attributes of the plugin.
attribute_ids: unsafe extern "C" fn(plugin_data: *const PluginData, ids: *mut size_t, _: size_t) -> c_intReturns the attribute IDs in a buffer provided by the caller.
attribute_name: unsafe extern "C" fn(plugin_data: *const PluginData, id: size_t, buffer: *mut c_uchar, length: size_t) -> c_intWrites the name of an attribute to a buffer that is provided by the caller.
attribute_pre_init: unsafe extern "C" fn(plugin_data: *const PluginData, id: size_t, pre_init: *mut c_char) -> c_intIndicates whether an attribute may be set before initialization.
attribute_value: unsafe extern "C" fn(plugin_data: *const PluginData, id: size_t, value: *mut Val, phase: Phase) -> c_intWrites the value of an attribute to a Value instance that is provided by the caller.
set_attribute_value: unsafe extern "C" fn(plugin_data: *mut PluginData, id: size_t, value: *const Val, phase: Phase) -> c_intSets the value of an attribute.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for VTable
impl Send for VTable
impl Sync for VTable
impl Unpin for VTable
impl UnwindSafe for VTable
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T[src]
fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,