7#include <aws/iot/IoT_EXPORTS.h>
8#include <aws/iot/model/ComparisonOperator.h>
9#include <aws/iot/model/MetricValue.h>
10#include <aws/iot/model/StatisticalThreshold.h>
11#include <aws/iot/model/MachineLearningDetectionConfig.h>
68 template<
typename ValueT = MetricValue>
69 void SetValue(ValueT&& value) { m_valueHasBeenSet =
true; m_value = std::forward<ValueT>(value); }
70 template<
typename ValueT = MetricValue>
87 inline void SetDurationSeconds(
int value) { m_durationSecondsHasBeenSet =
true; m_durationSeconds = value; }
121 template<
typename StatisticalThresholdT = StatisticalThreshold>
122 void SetStatisticalThreshold(StatisticalThresholdT&& value) { m_statisticalThresholdHasBeenSet =
true; m_statisticalThreshold = std::forward<StatisticalThresholdT>(value); }
123 template<
typename StatisticalThresholdT = StatisticalThreshold>
133 template<
typename MlDetectionConfigT = MachineLearningDetectionConfig>
134 void SetMlDetectionConfig(MlDetectionConfigT&& value) { m_mlDetectionConfigHasBeenSet =
true; m_mlDetectionConfig = std::forward<MlDetectionConfigT>(value); }
135 template<
typename MlDetectionConfigT = MachineLearningDetectionConfig>
141 bool m_comparisonOperatorHasBeenSet =
false;
144 bool m_valueHasBeenSet =
false;
146 int m_durationSeconds{0};
147 bool m_durationSecondsHasBeenSet =
false;
149 int m_consecutiveDatapointsToAlarm{0};
150 bool m_consecutiveDatapointsToAlarmHasBeenSet =
false;
152 int m_consecutiveDatapointsToClear{0};
153 bool m_consecutiveDatapointsToClearHasBeenSet =
false;
155 StatisticalThreshold m_statisticalThreshold;
156 bool m_statisticalThresholdHasBeenSet =
false;
158 MachineLearningDetectionConfig m_mlDetectionConfig;
159 bool m_mlDetectionConfigHasBeenSet =
false;
BehaviorCriteria & WithStatisticalThreshold(StatisticalThresholdT &&value)
BehaviorCriteria & WithMlDetectionConfig(MlDetectionConfigT &&value)
BehaviorCriteria & WithValue(ValueT &&value)
void SetComparisonOperator(ComparisonOperator value)
void SetDurationSeconds(int value)
bool DurationSecondsHasBeenSet() const
AWS_IOT_API BehaviorCriteria()=default
ComparisonOperator GetComparisonOperator() const
const MachineLearningDetectionConfig & GetMlDetectionConfig() const
bool ConsecutiveDatapointsToAlarmHasBeenSet() const
void SetConsecutiveDatapointsToAlarm(int value)
bool ConsecutiveDatapointsToClearHasBeenSet() const
AWS_IOT_API Aws::Utils::Json::JsonValue Jsonize() const
int GetDurationSeconds() const
const StatisticalThreshold & GetStatisticalThreshold() const
int GetConsecutiveDatapointsToAlarm() const
void SetMlDetectionConfig(MlDetectionConfigT &&value)
bool MlDetectionConfigHasBeenSet() const
int GetConsecutiveDatapointsToClear() const
BehaviorCriteria & WithDurationSeconds(int value)
BehaviorCriteria & WithConsecutiveDatapointsToClear(int value)
BehaviorCriteria & WithComparisonOperator(ComparisonOperator value)
AWS_IOT_API BehaviorCriteria & operator=(Aws::Utils::Json::JsonView jsonValue)
bool ValueHasBeenSet() const
bool ComparisonOperatorHasBeenSet() const
void SetConsecutiveDatapointsToClear(int value)
AWS_IOT_API BehaviorCriteria(Aws::Utils::Json::JsonView jsonValue)
BehaviorCriteria & WithConsecutiveDatapointsToAlarm(int value)
void SetStatisticalThreshold(StatisticalThresholdT &&value)
void SetValue(ValueT &&value)
const MetricValue & GetValue() const
bool StatisticalThresholdHasBeenSet() const
Aws::Utils::Json::JsonValue JsonValue