pub struct LinkMetadata {
pub dbf_type: Option<LinkDbfType>,
pub element_count: Option<i64>,
pub graphic_limits: Option<(f64, f64)>,
pub control_limits: Option<(f64, f64)>,
pub alarm_limits: Option<(f64, f64, f64, f64)>,
pub precision: Option<i16>,
pub units: Option<String>,
pub description: Option<String>,
}Expand description
Remote display / control / valueAlarm metadata snapshot for a link, as exposed by pvxs’s pvalink lset metadata getters.
Mirrors the pvxs pvalink_lset.cpp metadata getter set installed
at pvxs/ioc/pvalink_lset.cpp:700:
pvaGetDBFtype, pvaGetElements, pvaGetControlLimits,
pvaGetGraphicLimits, pvaGetAlarmLimits, pvaGetPrecision,
pvaGetUnits.
Every field is optional: pvxs’s getters read the cached NT
structure with Value::as, which leaves the caller’s buffer
unchanged when the sub-field is absent. None here means the
remote NT value carried no such metadata — the record support
then keeps its local/default metadata, exactly as the C path does.
Fields§
§dbf_type: Option<LinkDbfType>DBF type the remote value maps to (pvaGetDBFtype). A connected
link always reports a type — an unmappable value shape falls back
to Long, the default: arm of pvxs pvaGetDBFtype
(pvalink_lset.cpp:199-236). None therefore means “not
connected” (no cached value), never “connected but unmappable”.
element_count: Option<i64>Element count: array length, or 1 for a scalar / any connected
non-array shape (pvaGetElements, pvalink_lset.cpp:242-254).
As with dbf_type, None means “not connected”.
graphic_limits: Option<(f64, f64)>display.limitLow / display.limitHigh (pvaGetGraphicLimits).
control_limits: Option<(f64, f64)>control.limitLow / control.limitHigh (pvaGetControlLimits).
alarm_limits: Option<(f64, f64, f64, f64)>valueAlarm.{lowAlarmLimit,lowWarningLimit,highWarningLimit, highAlarmLimit} as (lolo, lo, hi, hihi) (pvaGetAlarmLimits).
precision: Option<i16>display.precision (pvaGetPrecision).
units: Option<String>display.units (pvaGetUnits).
description: Option<String>display.description — carried so a link snapshot is complete;
pvxs exposes it through the same fld_meta cache.
Trait Implementations§
Source§impl Clone for LinkMetadata
impl Clone for LinkMetadata
Source§fn clone(&self) -> LinkMetadata
fn clone(&self) -> LinkMetadata
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for LinkMetadata
impl Debug for LinkMetadata
Source§impl Default for LinkMetadata
impl Default for LinkMetadata
Source§fn default() -> LinkMetadata
fn default() -> LinkMetadata
Source§impl PartialEq for LinkMetadata
impl PartialEq for LinkMetadata
Source§fn eq(&self, other: &LinkMetadata) -> bool
fn eq(&self, other: &LinkMetadata) -> bool
self and other values to be equal, and is used by ==.