pub trait RangeMapper: Send + Sync {
// Required methods
fn normalize(&self, plain: f64) -> f64;
fn denormalize(&self, normalized: f64) -> f64;
fn range(&self) -> (f64, f64);
// Provided method
fn default_normalized(&self, plain_default: f64) -> f64 { ... }
}Expand description
Trait for mapping between plain values and normalized values.
Implementations must be thread-safe (Send + Sync) for use in
audio plugin parameters.
Required Methods§
Sourcefn normalize(&self, plain: f64) -> f64
fn normalize(&self, plain: f64) -> f64
Convert a plain value to normalized (0.0-1.0).
Values outside the range are clamped.
Sourcefn denormalize(&self, normalized: f64) -> f64
fn denormalize(&self, normalized: f64) -> f64
Convert a normalized value (0.0-1.0) to plain.
Values outside 0.0-1.0 are clamped.
Provided Methods§
Sourcefn default_normalized(&self, plain_default: f64) -> f64
fn default_normalized(&self, plain_default: f64) -> f64
Get the default normalized value for a given plain default.