aws-sdk-sagemakergeospatial 1.103.0

AWS SDK for Amazon SageMaker geospatial capabilities
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.

/// <p>Properties associated with the Item.</p>
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct Properties {
    /// <p>Estimate of cloud cover.</p>
    pub eo_cloud_cover: ::std::option::Option<f32>,
    /// <p>The angle from the sensor between nadir (straight down) and the scene center. Measured in degrees (0-90).</p>
    pub view_off_nadir: ::std::option::Option<f32>,
    /// <p>The sun azimuth angle. From the scene center point on the ground, this is the angle between truth north and the sun. Measured clockwise in degrees (0-360).</p>
    pub view_sun_azimuth: ::std::option::Option<f32>,
    /// <p>The sun elevation angle. The angle from the tangent of the scene center point to the sun. Measured from the horizon in degrees (-90-90). Negative values indicate the sun is below the horizon, e.g. sun elevation of -10° means the data was captured during <a href="https://www.timeanddate.com/astronomy/different-types-twilight.html">nautical twilight</a>.</p>
    pub view_sun_elevation: ::std::option::Option<f32>,
    /// <p>Platform property. Platform refers to the unique name of the specific platform the instrument is attached to. For satellites it is the name of the satellite, eg. landsat-8 (Landsat-8), sentinel-2a.</p>
    pub platform: ::std::option::Option<::std::string::String>,
    /// <p>Land cloud cover for Landsat Data Collection.</p>
    pub landsat_cloud_cover_land: ::std::option::Option<f32>,
}
impl Properties {
    /// <p>Estimate of cloud cover.</p>
    pub fn eo_cloud_cover(&self) -> ::std::option::Option<f32> {
        self.eo_cloud_cover
    }
    /// <p>The angle from the sensor between nadir (straight down) and the scene center. Measured in degrees (0-90).</p>
    pub fn view_off_nadir(&self) -> ::std::option::Option<f32> {
        self.view_off_nadir
    }
    /// <p>The sun azimuth angle. From the scene center point on the ground, this is the angle between truth north and the sun. Measured clockwise in degrees (0-360).</p>
    pub fn view_sun_azimuth(&self) -> ::std::option::Option<f32> {
        self.view_sun_azimuth
    }
    /// <p>The sun elevation angle. The angle from the tangent of the scene center point to the sun. Measured from the horizon in degrees (-90-90). Negative values indicate the sun is below the horizon, e.g. sun elevation of -10° means the data was captured during <a href="https://www.timeanddate.com/astronomy/different-types-twilight.html">nautical twilight</a>.</p>
    pub fn view_sun_elevation(&self) -> ::std::option::Option<f32> {
        self.view_sun_elevation
    }
    /// <p>Platform property. Platform refers to the unique name of the specific platform the instrument is attached to. For satellites it is the name of the satellite, eg. landsat-8 (Landsat-8), sentinel-2a.</p>
    pub fn platform(&self) -> ::std::option::Option<&str> {
        self.platform.as_deref()
    }
    /// <p>Land cloud cover for Landsat Data Collection.</p>
    pub fn landsat_cloud_cover_land(&self) -> ::std::option::Option<f32> {
        self.landsat_cloud_cover_land
    }
}
impl Properties {
    /// Creates a new builder-style object to manufacture [`Properties`](crate::types::Properties).
    pub fn builder() -> crate::types::builders::PropertiesBuilder {
        crate::types::builders::PropertiesBuilder::default()
    }
}

/// A builder for [`Properties`](crate::types::Properties).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct PropertiesBuilder {
    pub(crate) eo_cloud_cover: ::std::option::Option<f32>,
    pub(crate) view_off_nadir: ::std::option::Option<f32>,
    pub(crate) view_sun_azimuth: ::std::option::Option<f32>,
    pub(crate) view_sun_elevation: ::std::option::Option<f32>,
    pub(crate) platform: ::std::option::Option<::std::string::String>,
    pub(crate) landsat_cloud_cover_land: ::std::option::Option<f32>,
}
impl PropertiesBuilder {
    /// <p>Estimate of cloud cover.</p>
    pub fn eo_cloud_cover(mut self, input: f32) -> Self {
        self.eo_cloud_cover = ::std::option::Option::Some(input);
        self
    }
    /// <p>Estimate of cloud cover.</p>
    pub fn set_eo_cloud_cover(mut self, input: ::std::option::Option<f32>) -> Self {
        self.eo_cloud_cover = input;
        self
    }
    /// <p>Estimate of cloud cover.</p>
    pub fn get_eo_cloud_cover(&self) -> &::std::option::Option<f32> {
        &self.eo_cloud_cover
    }
    /// <p>The angle from the sensor between nadir (straight down) and the scene center. Measured in degrees (0-90).</p>
    pub fn view_off_nadir(mut self, input: f32) -> Self {
        self.view_off_nadir = ::std::option::Option::Some(input);
        self
    }
    /// <p>The angle from the sensor between nadir (straight down) and the scene center. Measured in degrees (0-90).</p>
    pub fn set_view_off_nadir(mut self, input: ::std::option::Option<f32>) -> Self {
        self.view_off_nadir = input;
        self
    }
    /// <p>The angle from the sensor between nadir (straight down) and the scene center. Measured in degrees (0-90).</p>
    pub fn get_view_off_nadir(&self) -> &::std::option::Option<f32> {
        &self.view_off_nadir
    }
    /// <p>The sun azimuth angle. From the scene center point on the ground, this is the angle between truth north and the sun. Measured clockwise in degrees (0-360).</p>
    pub fn view_sun_azimuth(mut self, input: f32) -> Self {
        self.view_sun_azimuth = ::std::option::Option::Some(input);
        self
    }
    /// <p>The sun azimuth angle. From the scene center point on the ground, this is the angle between truth north and the sun. Measured clockwise in degrees (0-360).</p>
    pub fn set_view_sun_azimuth(mut self, input: ::std::option::Option<f32>) -> Self {
        self.view_sun_azimuth = input;
        self
    }
    /// <p>The sun azimuth angle. From the scene center point on the ground, this is the angle between truth north and the sun. Measured clockwise in degrees (0-360).</p>
    pub fn get_view_sun_azimuth(&self) -> &::std::option::Option<f32> {
        &self.view_sun_azimuth
    }
    /// <p>The sun elevation angle. The angle from the tangent of the scene center point to the sun. Measured from the horizon in degrees (-90-90). Negative values indicate the sun is below the horizon, e.g. sun elevation of -10° means the data was captured during <a href="https://www.timeanddate.com/astronomy/different-types-twilight.html">nautical twilight</a>.</p>
    pub fn view_sun_elevation(mut self, input: f32) -> Self {
        self.view_sun_elevation = ::std::option::Option::Some(input);
        self
    }
    /// <p>The sun elevation angle. The angle from the tangent of the scene center point to the sun. Measured from the horizon in degrees (-90-90). Negative values indicate the sun is below the horizon, e.g. sun elevation of -10° means the data was captured during <a href="https://www.timeanddate.com/astronomy/different-types-twilight.html">nautical twilight</a>.</p>
    pub fn set_view_sun_elevation(mut self, input: ::std::option::Option<f32>) -> Self {
        self.view_sun_elevation = input;
        self
    }
    /// <p>The sun elevation angle. The angle from the tangent of the scene center point to the sun. Measured from the horizon in degrees (-90-90). Negative values indicate the sun is below the horizon, e.g. sun elevation of -10° means the data was captured during <a href="https://www.timeanddate.com/astronomy/different-types-twilight.html">nautical twilight</a>.</p>
    pub fn get_view_sun_elevation(&self) -> &::std::option::Option<f32> {
        &self.view_sun_elevation
    }
    /// <p>Platform property. Platform refers to the unique name of the specific platform the instrument is attached to. For satellites it is the name of the satellite, eg. landsat-8 (Landsat-8), sentinel-2a.</p>
    pub fn platform(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.platform = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>Platform property. Platform refers to the unique name of the specific platform the instrument is attached to. For satellites it is the name of the satellite, eg. landsat-8 (Landsat-8), sentinel-2a.</p>
    pub fn set_platform(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.platform = input;
        self
    }
    /// <p>Platform property. Platform refers to the unique name of the specific platform the instrument is attached to. For satellites it is the name of the satellite, eg. landsat-8 (Landsat-8), sentinel-2a.</p>
    pub fn get_platform(&self) -> &::std::option::Option<::std::string::String> {
        &self.platform
    }
    /// <p>Land cloud cover for Landsat Data Collection.</p>
    pub fn landsat_cloud_cover_land(mut self, input: f32) -> Self {
        self.landsat_cloud_cover_land = ::std::option::Option::Some(input);
        self
    }
    /// <p>Land cloud cover for Landsat Data Collection.</p>
    pub fn set_landsat_cloud_cover_land(mut self, input: ::std::option::Option<f32>) -> Self {
        self.landsat_cloud_cover_land = input;
        self
    }
    /// <p>Land cloud cover for Landsat Data Collection.</p>
    pub fn get_landsat_cloud_cover_land(&self) -> &::std::option::Option<f32> {
        &self.landsat_cloud_cover_land
    }
    /// Consumes the builder and constructs a [`Properties`](crate::types::Properties).
    pub fn build(self) -> crate::types::Properties {
        crate::types::Properties {
            eo_cloud_cover: self.eo_cloud_cover,
            view_off_nadir: self.view_off_nadir,
            view_sun_azimuth: self.view_sun_azimuth,
            view_sun_elevation: self.view_sun_elevation,
            platform: self.platform,
            landsat_cloud_cover_land: self.landsat_cloud_cover_land,
        }
    }
}