/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Contains an asset transform property. A transform is a one-to-one mapping of
* a property's data points from one form to another. For example, you can use a
* transform to convert a Celsius data stream to Fahrenheit by applying the
* transformation expression to each data point of the Celsius stream. A transform
* can only have a data type of For more
* information, see Transforms
* in the IoT SiteWise User Guide.DOUBLE
and consume properties with
* data types of INTEGER
or DOUBLE
.See Also:
AWS
* API Reference
The mathematical expression that defines the transformation function. You can * specify up to 10 variables per expression. You can specify up to 10 functions * per expression.
For more information, see Quotas * in the IoT SiteWise User Guide.
*/ inline const Aws::String& GetExpression() const{ return m_expression; } /** *The mathematical expression that defines the transformation function. You can * specify up to 10 variables per expression. You can specify up to 10 functions * per expression.
For more information, see Quotas * in the IoT SiteWise User Guide.
*/ inline bool ExpressionHasBeenSet() const { return m_expressionHasBeenSet; } /** *The mathematical expression that defines the transformation function. You can * specify up to 10 variables per expression. You can specify up to 10 functions * per expression.
For more information, see Quotas * in the IoT SiteWise User Guide.
*/ inline void SetExpression(const Aws::String& value) { m_expressionHasBeenSet = true; m_expression = value; } /** *The mathematical expression that defines the transformation function. You can * specify up to 10 variables per expression. You can specify up to 10 functions * per expression.
For more information, see Quotas * in the IoT SiteWise User Guide.
*/ inline void SetExpression(Aws::String&& value) { m_expressionHasBeenSet = true; m_expression = std::move(value); } /** *The mathematical expression that defines the transformation function. You can * specify up to 10 variables per expression. You can specify up to 10 functions * per expression.
For more information, see Quotas * in the IoT SiteWise User Guide.
*/ inline void SetExpression(const char* value) { m_expressionHasBeenSet = true; m_expression.assign(value); } /** *The mathematical expression that defines the transformation function. You can * specify up to 10 variables per expression. You can specify up to 10 functions * per expression.
For more information, see Quotas * in the IoT SiteWise User Guide.
*/ inline Transform& WithExpression(const Aws::String& value) { SetExpression(value); return *this;} /** *The mathematical expression that defines the transformation function. You can * specify up to 10 variables per expression. You can specify up to 10 functions * per expression.
For more information, see Quotas * in the IoT SiteWise User Guide.
*/ inline Transform& WithExpression(Aws::String&& value) { SetExpression(std::move(value)); return *this;} /** *The mathematical expression that defines the transformation function. You can * specify up to 10 variables per expression. You can specify up to 10 functions * per expression.
For more information, see Quotas * in the IoT SiteWise User Guide.
*/ inline Transform& WithExpression(const char* value) { SetExpression(value); return *this;} /** *The list of variables used in the expression.
*/ inline const Aws::VectorThe list of variables used in the expression.
*/ inline bool VariablesHasBeenSet() const { return m_variablesHasBeenSet; } /** *The list of variables used in the expression.
*/ inline void SetVariables(const Aws::VectorThe list of variables used in the expression.
*/ inline void SetVariables(Aws::VectorThe list of variables used in the expression.
*/ inline Transform& WithVariables(const Aws::VectorThe list of variables used in the expression.
*/ inline Transform& WithVariables(Aws::VectorThe list of variables used in the expression.
*/ inline Transform& AddVariables(const ExpressionVariable& value) { m_variablesHasBeenSet = true; m_variables.push_back(value); return *this; } /** *The list of variables used in the expression.
*/ inline Transform& AddVariables(ExpressionVariable&& value) { m_variablesHasBeenSet = true; m_variables.push_back(std::move(value)); return *this; } /** *The processing configuration for the given transform property. You can * configure transforms to be kept at the edge or forwarded to the Amazon Web * Services Cloud. You can also configure transforms to be computed at the edge or * in the cloud.
*/ inline const TransformProcessingConfig& GetProcessingConfig() const{ return m_processingConfig; } /** *The processing configuration for the given transform property. You can * configure transforms to be kept at the edge or forwarded to the Amazon Web * Services Cloud. You can also configure transforms to be computed at the edge or * in the cloud.
*/ inline bool ProcessingConfigHasBeenSet() const { return m_processingConfigHasBeenSet; } /** *The processing configuration for the given transform property. You can * configure transforms to be kept at the edge or forwarded to the Amazon Web * Services Cloud. You can also configure transforms to be computed at the edge or * in the cloud.
*/ inline void SetProcessingConfig(const TransformProcessingConfig& value) { m_processingConfigHasBeenSet = true; m_processingConfig = value; } /** *The processing configuration for the given transform property. You can * configure transforms to be kept at the edge or forwarded to the Amazon Web * Services Cloud. You can also configure transforms to be computed at the edge or * in the cloud.
*/ inline void SetProcessingConfig(TransformProcessingConfig&& value) { m_processingConfigHasBeenSet = true; m_processingConfig = std::move(value); } /** *The processing configuration for the given transform property. You can * configure transforms to be kept at the edge or forwarded to the Amazon Web * Services Cloud. You can also configure transforms to be computed at the edge or * in the cloud.
*/ inline Transform& WithProcessingConfig(const TransformProcessingConfig& value) { SetProcessingConfig(value); return *this;} /** *The processing configuration for the given transform property. You can * configure transforms to be kept at the edge or forwarded to the Amazon Web * Services Cloud. You can also configure transforms to be computed at the edge or * in the cloud.
*/ inline Transform& WithProcessingConfig(TransformProcessingConfig&& value) { SetProcessingConfig(std::move(value)); return *this;} private: Aws::String m_expression; bool m_expressionHasBeenSet = false; Aws::Vector