pub trait SensorBundleProvider: Send + Sync {
// Required methods
fn sensor_name(&self) -> &'static str;
fn can_handle(&self, bundle_root: &Path) -> bool;
fn resolve_optical_bundle(
&self,
bundle_root: &Path,
) -> Result<ResolvedOpticalBundle>;
}Expand description
Resolves a sensor bundle directory into a ResolvedOpticalBundle.
Implementations are registered with a SensorBundleRegistry so callers
can probe an arbitrary directory without knowing its sensor family in advance.
Required Methods§
Sourcefn sensor_name(&self) -> &'static str
fn sensor_name(&self) -> &'static str
Short identifier for this sensor family (e.g. "dimap").
Sourcefn can_handle(&self, bundle_root: &Path) -> bool
fn can_handle(&self, bundle_root: &Path) -> bool
Returns true when bundle_root looks like a bundle this provider can open.
Sourcefn resolve_optical_bundle(
&self,
bundle_root: &Path,
) -> Result<ResolvedOpticalBundle>
fn resolve_optical_bundle( &self, bundle_root: &Path, ) -> Result<ResolvedOpticalBundle>
Resolves the bundle and returns the canonical optical description.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".