pub enum Product {
Reflectivity,
Velocity,
SpectrumWidth,
DifferentialReflectivity,
DifferentialPhase,
CorrelationCoefficient,
ClutterFilterPower,
}Expand description
Identifies a radar data product (moment type).
Each product corresponds to a different type of moment data captured by the radar. This enum is shared across the entire crate ecosystem — it identifies which moment field to extract from a radial, which processing algorithm to apply, or which color scale to use for rendering.
Variants§
Reflectivity
Base reflectivity (dBZ). Measures the intensity of precipitation.
Velocity
Radial velocity (m/s). Measures motion toward or away from the radar.
SpectrumWidth
Spectrum width (m/s). Measures turbulence within the radar beam.
DifferentialReflectivity
Differential reflectivity (dB). Compares horizontal and vertical reflectivity.
DifferentialPhase
Differential phase (degrees). Phase difference between polarizations.
CorrelationCoefficient
Correlation coefficient. Correlation between polarizations (0-1).
ClutterFilterPower
Clutter filter power (CFP). Difference between clutter-filtered and unfiltered reflectivity.
Implementations§
Source§impl Product
impl Product
Sourcepub fn moment_data<'a>(&self, radial: &'a Radial) -> Option<&'a MomentData>
pub fn moment_data<'a>(&self, radial: &'a Radial) -> Option<&'a MomentData>
Returns the moment data for this product from a radial, if present.
For all products except Product::ClutterFilterPower, this returns the standard
MomentData. For CFP, use cfp_moment_data instead.
Sourcepub fn cfp_moment_data<'a>(
&self,
radial: &'a Radial,
) -> Option<&'a CFPMomentData>
pub fn cfp_moment_data<'a>( &self, radial: &'a Radial, ) -> Option<&'a CFPMomentData>
Returns the CFP moment data from a radial, if this product is
Product::ClutterFilterPower and the data is present.
Sourcepub fn value_range(&self) -> (f32, f32)
pub fn value_range(&self) -> (f32, f32)
Returns the typical value range (min, max) for this product.
These ranges cover the expected data values for each product type and are used for color mapping and normalization.
Trait Implementations§
impl Copy for Product
impl Eq for Product
impl StructuralPartialEq for Product
Auto Trait Implementations§
impl Freeze for Product
impl RefUnwindSafe for Product
impl Send for Product
impl Sync for Product
impl Unpin for Product
impl UnsafeUnpin for Product
impl UnwindSafe for Product
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more