Skip to main content

InverseTransferFunction

Trait InverseTransferFunction 

Source
pub trait InverseTransferFunction {
    type Physical: Copy;
    type Observation: Copy;

    // Required method
    fn invert(
        &self,
        physical: Self::Physical,
    ) -> Result<Self::Observation, InverseTransferError<Self::Physical>>;
}
Expand description

A conversion from a physical measurement back to an observation.

Parallel to TransferFunction; not a supertrait, because the map direction and error type differ.

Required Associated Types§

Source

type Physical: Copy

Physical measurement type (input to inverse).

Source

type Observation: Copy

Observation type (output of inverse).

Required Methods§

Source

fn invert( &self, physical: Self::Physical, ) -> Result<Self::Observation, InverseTransferError<Self::Physical>>

Invert a physical measurement to an observation.

Values outside the table’s physical range follow the same BoundaryBehavior settings as the forward direction, mapped through the table’s MonotonicDirection so both directions agree about the same out-of-range condition. On a decreasing table the codes above domain_max are the ones producing physical values below range_min, so above governs the low-physical side there. Transfer inverses never extrapolate.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§