7#include <aws/iot/IoT_EXPORTS.h>
8#include <aws/iot/model/ComparisonOperator.h>
9#include <aws/iot/model/MachineLearningDetectionConfig.h>
10#include <aws/iot/model/MetricValue.h>
11#include <aws/iot/model/StatisticalThreshold.h>
53 m_comparisonOperatorHasBeenSet =
true;
54 m_comparisonOperator = value;
68 template <
typename ValueT = MetricValue>
70 m_valueHasBeenSet =
true;
71 m_value = std::forward<ValueT>(value);
73 template <
typename ValueT = MetricValue>
75 SetValue(std::forward<ValueT>(value));
94 m_durationSecondsHasBeenSet =
true;
95 m_durationSeconds = value;
111 m_consecutiveDatapointsToAlarmHasBeenSet =
true;
112 m_consecutiveDatapointsToAlarm = value;
129 m_consecutiveDatapointsToClearHasBeenSet =
true;
130 m_consecutiveDatapointsToClear = value;
145 template <
typename StatisticalThresholdT = StatisticalThreshold>
147 m_statisticalThresholdHasBeenSet =
true;
148 m_statisticalThreshold = std::forward<StatisticalThresholdT>(value);
150 template <
typename StatisticalThresholdT = StatisticalThreshold>
163 template <
typename MlDetectionConfigT = MachineLearningDetectionConfig>
165 m_mlDetectionConfigHasBeenSet =
true;
166 m_mlDetectionConfig = std::forward<MlDetectionConfigT>(value);
168 template <
typename MlDetectionConfigT = MachineLearningDetectionConfig>
179 int m_durationSeconds{0};
181 int m_consecutiveDatapointsToAlarm{0};
183 int m_consecutiveDatapointsToClear{0};
185 StatisticalThreshold m_statisticalThreshold;
187 MachineLearningDetectionConfig m_mlDetectionConfig;
188 bool m_comparisonOperatorHasBeenSet =
false;
189 bool m_valueHasBeenSet =
false;
190 bool m_durationSecondsHasBeenSet =
false;
191 bool m_consecutiveDatapointsToAlarmHasBeenSet =
false;
192 bool m_consecutiveDatapointsToClearHasBeenSet =
false;
193 bool m_statisticalThresholdHasBeenSet =
false;
194 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