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 * The version of the OpenAPI document: 0.9.0
7 * Contact: dev@geoengine.de
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct RasterVectorJoinParameters {
16    /// The aggregation function to use for features covering multiple pixels.
17    #[serde(rename = "featureAggregation")]
18    pub feature_aggregation: models::FeatureAggregationMethod,
19    /// Whether to ignore no data values in the aggregation. Defaults to `false`.
20    #[serde(rename = "featureAggregationIgnoreNoData", skip_serializing_if = "Option::is_none")]
21    pub feature_aggregation_ignore_no_data: Option<bool>,
22    /// 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. 
23    #[serde(rename = "names")]
24    pub names: Box<models::ColumnNames>,
25    /// The aggregation function to use for features covering multiple (raster) time steps.
26    #[serde(rename = "temporalAggregation")]
27    pub temporal_aggregation: models::TemporalAggregationMethod,
28    /// Whether to ignore no data values in the aggregation. Defaults to `false`.
29    #[serde(rename = "temporalAggregationIgnoreNoData", skip_serializing_if = "Option::is_none")]
30    pub temporal_aggregation_ignore_no_data: Option<bool>,
31}
32
33impl RasterVectorJoinParameters {
34    pub fn new(feature_aggregation: models::FeatureAggregationMethod, names: models::ColumnNames, temporal_aggregation: models::TemporalAggregationMethod) -> RasterVectorJoinParameters {
35        RasterVectorJoinParameters {
36            feature_aggregation,
37            feature_aggregation_ignore_no_data: None,
38            names: Box::new(names),
39            temporal_aggregation,
40            temporal_aggregation_ignore_no_data: None,
41        }
42    }
43}
44