pub struct GroupPvStore<S: PvStore> { /* private fields */ }Expand description
A PvStore wrapper that adds group-PV support on top of an inner store.
Group PV names are resolved by fetching each member PV from the inner store
and composing them into an NtPayload::Generic. Non-group PV names are
forwarded to the inner store unchanged.
Implementations§
Source§impl<S: PvStore> GroupPvStore<S>
impl<S: PvStore> GroupPvStore<S>
Trait Implementations§
Source§impl<S: PvStore> PvStore for GroupPvStore<S>
impl<S: PvStore> PvStore for GroupPvStore<S>
Source§fn has_pv(&self, name: &str) -> impl Future<Output = bool> + Send
fn has_pv(&self, name: &str) -> impl Future<Output = bool> + Send
Check whether a PV name exists in this store.
Source§fn get_snapshot(
&self,
name: &str,
) -> impl Future<Output = Option<NtPayload>> + Send
fn get_snapshot( &self, name: &str, ) -> impl Future<Output = Option<NtPayload>> + Send
Get the current value of a PV as an
NtPayload snapshot.Source§fn get_descriptor(
&self,
name: &str,
) -> impl Future<Output = Option<StructureDesc>> + Send
fn get_descriptor( &self, name: &str, ) -> impl Future<Output = Option<StructureDesc>> + Send
Get the structure descriptor for a PV (used by GET init and GET_FIELD).
Source§fn put_value(
&self,
name: &str,
value: &DecodedValue,
) -> impl Future<Output = Result<Vec<(String, NtPayload)>, String>> + Send
fn put_value( &self, name: &str, value: &DecodedValue, ) -> impl Future<Output = Result<Vec<(String, NtPayload)>, String>> + Send
Apply a PUT value to a PV. Returns the list of (pv_name, updated_payload)
pairs for all PVs that changed as a result (e.g. forward-link processing
may cause multiple PVs to update).
Source§fn is_writable(&self, name: &str) -> impl Future<Output = bool> + Send
fn is_writable(&self, name: &str) -> impl Future<Output = bool> + Send
Check whether a PV is writable.
Auto Trait Implementations§
impl<S> Freeze for GroupPvStore<S>
impl<S> RefUnwindSafe for GroupPvStore<S>where
S: RefUnwindSafe,
impl<S> Send for GroupPvStore<S>
impl<S> Sync for GroupPvStore<S>
impl<S> Unpin for GroupPvStore<S>
impl<S> UnsafeUnpin for GroupPvStore<S>
impl<S> UnwindSafe for GroupPvStore<S>where
S: RefUnwindSafe,
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