Crate eo_identifiers

Crate eo_identifiers 

Source
Expand description

Parsers for naming conventions of earth observation products and datasets

§Example

use eo_identifiers::Identifier;
use eo_identifiers::identifiers::sentinel2::ProductLevel;
use std::str::FromStr;
use chrono::{NaiveDate, NaiveDateTime, NaiveTime};

let ident = Identifier::from_str("S2A_MSIL1C_20170105T013442_N0204_R031_T53NMJ_20170105T013443")
    .unwrap();

if let Identifier::Sentinel2Product(product) = ident {
    assert_eq!(product.product_level, ProductLevel::L1C);
    assert_eq!(
        product.start_datetime,
        NaiveDateTime::new(
            NaiveDate::from_ymd_opt(2017, 1, 5).unwrap(),
            NaiveTime::from_hms_opt(1, 34, 42).unwrap()
        )
    );
    assert_eq!(product.relative_orbit_number, 31);
}
else {
    unreachable!();
}

Re-exports§

pub use nom;

Modules§

identifiers

Macros§

impl_from_str

Enums§

Identifier
Identifier of a earth observation product or dataset
Mission
ParseError

Traits§

Name
NameLong