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§
Sourcetype Observation: Copy
type Observation: Copy
Observation type (output of inverse).
Required Methods§
Sourcefn invert(
&self,
physical: Self::Physical,
) -> Result<Self::Observation, InverseTransferError<Self::Physical>>
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".