Skip to main content

geoengine_api_client/models/
raster_vector_join_parameters.rs

1/*
2 * Geo Engine API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * Contact: dev@geoengine.de
7 * Generated by: https://openapi-generator.tech
8 */
9
10use crate::models;
11use serde::{Deserialize, Serialize};
12
13#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
14pub struct RasterVectorJoinParameters {
15    /// The aggregation function to use for features covering multiple pixels.
16    #[serde(rename = "featureAggregation")]
17    pub feature_aggregation: models::FeatureAggregationMethod,
18    /// Whether to ignore no data values in the aggregation. Defaults to `false`.
19    #[serde(rename = "featureAggregationIgnoreNoData", skip_serializing_if = "Option::is_none")]
20    pub feature_aggregation_ignore_no_data: Option<bool>,
21    /// Specify how the new column names are derived from the raster band names.  The `ColumnNames` type is used to specify how the new column names are derived from the raster band names.  - **default**: Appends \" (n)\" to the band name with the smallest `n` that avoids a conflict. - **suffix**: Specifies a suffix for each input, to be appended to the band names. - **rename**: A list of names for each new column. 
22    #[serde(rename = "names")]
23    pub names: Box<models::ColumnNames>,
24    /// The aggregation function to use for features covering multiple (raster) time steps.
25    #[serde(rename = "temporalAggregation")]
26    pub temporal_aggregation: models::TemporalAggregationMethod,
27    /// Whether to ignore no data values in the aggregation. Defaults to `false`.
28    #[serde(rename = "temporalAggregationIgnoreNoData", skip_serializing_if = "Option::is_none")]
29    pub temporal_aggregation_ignore_no_data: Option<bool>,
30}
31
32impl RasterVectorJoinParameters {
33    pub fn new(feature_aggregation: models::FeatureAggregationMethod, names: models::ColumnNames, temporal_aggregation: models::TemporalAggregationMethod) -> RasterVectorJoinParameters {
34        RasterVectorJoinParameters {
35            feature_aggregation,
36            feature_aggregation_ignore_no_data: None,
37            names: Box::new(names),
38            temporal_aggregation,
39            temporal_aggregation_ignore_no_data: None,
40        }
41    }
42}
43