1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
// 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,
}
}
}