pub struct Band {
pub name: Option<String>,
pub description: Option<String>,
pub nodata: Option<f64>,
pub data_type: Option<DataType>,
pub statistics: Option<Statistics>,
pub unit: Option<String>,
pub additional_fields: Map<String, Value>,
}
Expand description
Bands are used to describe the available bands in a STAC entity or Asset.
A band describes the general construct of a band or layer, which doesn’t necessarily need to be a spectral band. By adding fields from extensions you can indicate that a band, for example, is
- a spectral band (EO extension),
- a band with classification results (classification extension),
- a band with quality information such as cloud cover probabilities,
etc.
Fields§
§name: Option<String>
The name of the band (e.g., “B01”, “B8”, “band2”, “red”), which should be unique across all bands defined in the list of bands.
This is typically the name the data provider uses for the band.
description: Option<String>
Description to fully explain the band.
CommonMark 0.29 syntax MAY be used for rich text representation.
nodata: Option<f64>
Value used to identify no-data.
The extension specifies that this can be a number or a string, but we just use a f64 with a custom (de)serializer.
TODO write custom (de)serializer.
data_type: Option<DataType>
The data type of the values.
statistics: Option<Statistics>
Statistics of all the values.
unit: Option<String>
Unit of measurement of the value.
additional_fields: Map<String, Value>
Additional fields on the asset.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Band
impl<'de> Deserialize<'de> for Band
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl StructuralPartialEq for Band
Auto Trait Implementations§
impl Freeze for Band
impl RefUnwindSafe for Band
impl Send for Band
impl Sync for Band
impl Unpin for Band
impl UnwindSafe for Band
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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