pub struct PlanetScopeBundle {Show 14 fields
pub bundle_root: PathBuf,
pub metadata_json_path: Option<PathBuf>,
pub metadata_xml_path: Option<PathBuf>,
pub scene_id: Option<String>,
pub acquisition_datetime_utc: Option<String>,
pub product_type: Option<String>,
pub cloud_cover_percent: Option<f64>,
pub sun_azimuth_deg: Option<f64>,
pub sun_elevation_deg: Option<f64>,
pub view_angle_deg: Option<f64>,
pub off_nadir_angle_deg: Option<f64>,
pub bands: BTreeMap<String, PathBuf>,
pub profile_bands: BTreeMap<String, BTreeMap<String, PathBuf>>,
pub qa_layers: BTreeMap<String, PathBuf>,
}Expand description
Parsed PlanetScope scene bundle.
Fields§
§bundle_root: PathBufRoot bundle directory path.
metadata_json_path: Option<PathBuf>Metadata JSON path when present.
metadata_xml_path: Option<PathBuf>Metadata XML path when present.
scene_id: Option<String>Scene identifier when present.
acquisition_datetime_utc: Option<String>Acquisition datetime UTC when present.
product_type: Option<String>Product type when present.
cloud_cover_percent: Option<f64>Cloud cover percentage when present.
sun_azimuth_deg: Option<f64>Mean sun azimuth in degrees when present.
sun_elevation_deg: Option<f64>Mean sun elevation in degrees when present.
view_angle_deg: Option<f64>View angle in degrees when present.
off_nadir_angle_deg: Option<f64>Off-nadir angle in degrees when present.
bands: BTreeMap<String, PathBuf>Canonical band key -> path.
profile_bands: BTreeMap<String, BTreeMap<String, PathBuf>>Profile key -> (canonical band key -> path).
qa_layers: BTreeMap<String, PathBuf>Canonical QA key -> path.
Implementations§
Source§impl PlanetScopeBundle
impl PlanetScopeBundle
Sourcepub fn open(bundle_root: impl AsRef<Path>) -> Result<Self>
pub fn open(bundle_root: impl AsRef<Path>) -> Result<Self>
Open and parse a PlanetScope scene directory.
Sourcepub fn list_band_keys(&self) -> Vec<String>
pub fn list_band_keys(&self) -> Vec<String>
List canonical band keys.
Sourcepub fn list_qa_keys(&self) -> Vec<String>
pub fn list_qa_keys(&self) -> Vec<String>
List canonical QA keys.
Sourcepub fn list_profiles(&self) -> Vec<String>
pub fn list_profiles(&self) -> Vec<String>
List profile keys (e.g. ANALYTIC, ANALYTIC_SR, VISUAL, PAN).
Sourcepub fn default_profile(&self) -> Option<&str>
pub fn default_profile(&self) -> Option<&str>
Resolve the preferred default profile key when available.
Sourcepub fn list_band_keys_for_profile(&self, profile: &str) -> Vec<String>
pub fn list_band_keys_for_profile(&self, profile: &str) -> Vec<String>
List canonical band keys for a given profile key.
Sourcepub fn band_path_for_profile(&self, profile: &str, key: &str) -> Option<&Path>
pub fn band_path_for_profile(&self, profile: &str, key: &str) -> Option<&Path>
Resolve canonical band path for a specific profile key.
Sourcepub fn read_band_for_profile(&self, profile: &str, key: &str) -> Result<Raster>
pub fn read_band_for_profile(&self, profile: &str, key: &str) -> Result<Raster>
Read canonical band raster for a specific profile key.
Sourcepub fn read_qa_layer(&self, key: &str) -> Result<Raster>
pub fn read_qa_layer(&self, key: &str) -> Result<Raster>
Read canonical QA raster.
Trait Implementations§
Source§impl Clone for PlanetScopeBundle
impl Clone for PlanetScopeBundle
Source§fn clone(&self) -> PlanetScopeBundle
fn clone(&self) -> PlanetScopeBundle
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for PlanetScopeBundle
impl RefUnwindSafe for PlanetScopeBundle
impl Send for PlanetScopeBundle
impl Sync for PlanetScopeBundle
impl Unpin for PlanetScopeBundle
impl UnsafeUnpin for PlanetScopeBundle
impl UnwindSafe for PlanetScopeBundle
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> 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