pub struct TransferMetadata {Show 15 fields
pub input_unit: &'static str,
pub output_unit: &'static str,
pub output_scale: u32,
pub domain_min: u16,
pub domain_max: u16,
pub range_min: i32,
pub range_max: i32,
pub direction: MonotonicDirection,
pub knot_count: usize,
pub strictly_monotonic: bool,
pub flat_segment_count: usize,
pub requested_max_error: u32,
pub achieved_max_error: u32,
pub worst_case_input: u16,
pub achieved_max_inverse_code_error: u16,
}Expand description
Compact facts recorded by the host generator for a transfer table.
The error fields describe numerical table and output-quantization error against the configured ideal source. They do not include sensor, component, ADC, model, self-heating, or calibration uncertainty.
Fields§
§input_unit: &'static strHuman-readable input unit, such as "adc_code" or "millivolt".
output_unit: &'static strHuman-readable physical output unit, such as "degree_celsius".
output_scale: u32Integer output quanta per physical output unit.
domain_min: u16Inclusive minimum input.
domain_max: u16Inclusive maximum input.
range_min: i32Inclusive minimum physical output (endpoint of the knot range).
range_max: i32Inclusive maximum physical output.
direction: MonotonicDirectionOutput monotonic direction.
knot_count: usizeNumber of piecewise-linear knots.
strictly_monotonic: boolTrue when every adjacent knot pair has unequal outputs.
flat_segment_count: usizeCount of adjacent knot pairs with equal outputs.
requested_max_error: u32Requested maximum numerical error in output quanta.
achieved_max_error: u32Exhaustively measured, conservatively rounded-up maximum error.
worst_case_input: u16Input where the achieved maximum error first occurs.
achieved_max_inverse_code_error: u16Exhaustively host-measured worst
|invert(convert(x)) as i32 − x as i32| over the input domain, in
codes, under the table’s default FlatResolution.
This is a measured round-trip bound, not a promise of identity: a
nonzero value means some observations do not survive a
convert-then-invert cycle exactly. Flat runs are resolved with
FlatResolution::PreferLowInput; overriding the policy with
PiecewiseLinearTransfer::with_flat_resolution can exceed this
bound on tables where flat_segment_count is nonzero.
Trait Implementations§
Source§impl Clone for TransferMetadata
impl Clone for TransferMetadata
Source§fn clone(&self) -> TransferMetadata
fn clone(&self) -> TransferMetadata
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for TransferMetadata
Source§impl Debug for TransferMetadata
impl Debug for TransferMetadata
impl Eq for TransferMetadata
Source§impl PartialEq for TransferMetadata
impl PartialEq for TransferMetadata
impl StructuralPartialEq for TransferMetadata
Auto Trait Implementations§
impl Freeze for TransferMetadata
impl RefUnwindSafe for TransferMetadata
impl Send for TransferMetadata
impl Sync for TransferMetadata
impl Unpin for TransferMetadata
impl UnsafeUnpin for TransferMetadata
impl UnwindSafe for TransferMetadata
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
Source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.