[−][src]Enum kpal_plugin::Callbacks
Callback functions that communicate with the hardware when an attribute is read or set.
The purpose of a callback is two-fold: it performs the actual communication with the hardware and/or it modifies the plugin's cached attribute data.
If the attribute is constant and never changes its original value, then the Constant
variant
should be used. If the attribute's value changes without user input (e.g. a sensor reading) but
cannot be set, then use the Get
variant. Otherwise, for attributes that can be both read and
set, use the GetAndSet
variant.
The Update variant is used to set only the cached value of attributes. Attributes that are Update always return their cached value when the attribute's value is read.
Variants
GetAndSet(fn(plugin: &T, cached: &Value) -> Result<Value, E>, fn(plugin: &T, cached: &Value, value: &Val) -> Result<(), E>)
Trait Implementations
impl<T, E: Error + PluginError> Debug for Callbacks<T, E>
[src]
Auto Trait Implementations
impl<T, E> RefUnwindSafe for Callbacks<T, E>
impl<T, E> Send for Callbacks<T, E>
impl<T, E> Sync for Callbacks<T, E>
impl<T, E> Unpin for Callbacks<T, E>
impl<T, E> UnwindSafe for Callbacks<T, E>
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, 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>,