pub enum NodeDecl {
Integer {Show 16 fields
name: String,
meta: NodeMeta,
addressing: Option<Addressing>,
len: u32,
access: AccessMode,
min: i64,
max: i64,
inc: Option<i64>,
unit: Option<String>,
bitfield: Option<BitField>,
selectors: Vec<String>,
selected_if: Vec<(String, Vec<String>)>,
pvalue: Option<String>,
p_max: Option<String>,
p_min: Option<String>,
value: Option<i64>,
},
Float {
name: String,
meta: NodeMeta,
addressing: Option<Addressing>,
access: AccessMode,
min: f64,
max: f64,
unit: Option<String>,
scale: Option<(i64, i64)>,
offset: Option<f64>,
selectors: Vec<String>,
selected_if: Vec<(String, Vec<String>)>,
pvalue: Option<String>,
},
Enum {
name: String,
meta: NodeMeta,
addressing: Option<Addressing>,
access: AccessMode,
entries: Vec<EnumEntryDecl>,
default: Option<String>,
selectors: Vec<String>,
selected_if: Vec<(String, Vec<String>)>,
pvalue: Option<String>,
},
Boolean {
name: String,
meta: NodeMeta,
addressing: Option<Addressing>,
len: u32,
access: AccessMode,
bitfield: Option<BitField>,
selectors: Vec<String>,
selected_if: Vec<(String, Vec<String>)>,
pvalue: Option<String>,
on_value: Option<i64>,
off_value: Option<i64>,
},
Command {
name: String,
meta: NodeMeta,
address: Option<u64>,
len: u32,
pvalue: Option<String>,
command_value: Option<i64>,
},
Category {
name: String,
meta: NodeMeta,
children: Vec<String>,
},
SwissKnife(SwissKnifeDecl),
Converter(ConverterDecl),
IntConverter(IntConverterDecl),
String(StringDecl),
}Expand description
Declaration of a node extracted from the GenICam XML description.
Variants§
Integer
Integer feature backed by a register block or delegated via pValue.
Fields
addressing: Option<Addressing>Addressing metadata (absent when delegated via pvalue).
access: AccessModeAccess privileges.
Float
Floating point feature backed by an integer register with scaling or delegated via pValue.
Fields
addressing: Option<Addressing>Addressing metadata (absent when delegated via pvalue).
access: AccessModeEnum
Enumeration feature exposing a list of named integer values.
Fields
addressing: Option<Addressing>Addressing metadata (absent when delegated via pvalue).
access: AccessModeentries: Vec<EnumEntryDecl>Boolean
Boolean feature backed by a single bit/byte register or delegated via pValue.
Fields
addressing: Option<Addressing>Addressing metadata (absent when delegated via pvalue).
access: AccessModeCommand
Command feature that triggers an action when written.
Fields
Category
Category used to organise features.
SwissKnife(SwissKnifeDecl)
Computed value backed by an arithmetic expression referencing other nodes.
Converter(ConverterDecl)
Converter transforming raw values to/from user-facing floating-point values.
IntConverter(IntConverterDecl)
IntConverter transforming raw values to/from user-facing integer values.
String(StringDecl)
StringReg for string-typed register access.