AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
BehaviorCriteria.h
1
6#pragma once
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>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace IoT
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_IOT_API BehaviorCriteria() = default;
42
43
45
56 inline ComparisonOperator GetComparisonOperator() const { return m_comparisonOperator; }
57 inline bool ComparisonOperatorHasBeenSet() const { return m_comparisonOperatorHasBeenSet; }
58 inline void SetComparisonOperator(ComparisonOperator value) { m_comparisonOperatorHasBeenSet = true; m_comparisonOperator = value; }
61
63
66 inline const MetricValue& GetValue() const { return m_value; }
67 inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; }
68 template<typename ValueT = MetricValue>
69 void SetValue(ValueT&& value) { m_valueHasBeenSet = true; m_value = std::forward<ValueT>(value); }
70 template<typename ValueT = MetricValue>
71 BehaviorCriteria& WithValue(ValueT&& value) { SetValue(std::forward<ValueT>(value)); return *this;}
73
75
85 inline int GetDurationSeconds() const { return m_durationSeconds; }
86 inline bool DurationSecondsHasBeenSet() const { return m_durationSecondsHasBeenSet; }
87 inline void SetDurationSeconds(int value) { m_durationSecondsHasBeenSet = true; m_durationSeconds = value; }
88 inline BehaviorCriteria& WithDurationSeconds(int value) { SetDurationSeconds(value); return *this;}
90
92
96 inline int GetConsecutiveDatapointsToAlarm() const { return m_consecutiveDatapointsToAlarm; }
97 inline bool ConsecutiveDatapointsToAlarmHasBeenSet() const { return m_consecutiveDatapointsToAlarmHasBeenSet; }
98 inline void SetConsecutiveDatapointsToAlarm(int value) { m_consecutiveDatapointsToAlarmHasBeenSet = true; m_consecutiveDatapointsToAlarm = value; }
101
103
108 inline int GetConsecutiveDatapointsToClear() const { return m_consecutiveDatapointsToClear; }
109 inline bool ConsecutiveDatapointsToClearHasBeenSet() const { return m_consecutiveDatapointsToClearHasBeenSet; }
110 inline void SetConsecutiveDatapointsToClear(int value) { m_consecutiveDatapointsToClearHasBeenSet = true; m_consecutiveDatapointsToClear = value; }
113
115
119 inline const StatisticalThreshold& GetStatisticalThreshold() const { return m_statisticalThreshold; }
120 inline bool StatisticalThresholdHasBeenSet() const { return m_statisticalThresholdHasBeenSet; }
121 template<typename StatisticalThresholdT = StatisticalThreshold>
122 void SetStatisticalThreshold(StatisticalThresholdT&& value) { m_statisticalThresholdHasBeenSet = true; m_statisticalThreshold = std::forward<StatisticalThresholdT>(value); }
123 template<typename StatisticalThresholdT = StatisticalThreshold>
124 BehaviorCriteria& WithStatisticalThreshold(StatisticalThresholdT&& value) { SetStatisticalThreshold(std::forward<StatisticalThresholdT>(value)); return *this;}
126
128
131 inline const MachineLearningDetectionConfig& GetMlDetectionConfig() const { return m_mlDetectionConfig; }
132 inline bool MlDetectionConfigHasBeenSet() const { return m_mlDetectionConfigHasBeenSet; }
133 template<typename MlDetectionConfigT = MachineLearningDetectionConfig>
134 void SetMlDetectionConfig(MlDetectionConfigT&& value) { m_mlDetectionConfigHasBeenSet = true; m_mlDetectionConfig = std::forward<MlDetectionConfigT>(value); }
135 template<typename MlDetectionConfigT = MachineLearningDetectionConfig>
136 BehaviorCriteria& WithMlDetectionConfig(MlDetectionConfigT&& value) { SetMlDetectionConfig(std::forward<MlDetectionConfigT>(value)); return *this;}
138 private:
139
141 bool m_comparisonOperatorHasBeenSet = false;
142
143 MetricValue m_value;
144 bool m_valueHasBeenSet = false;
145
146 int m_durationSeconds{0};
147 bool m_durationSecondsHasBeenSet = false;
148
149 int m_consecutiveDatapointsToAlarm{0};
150 bool m_consecutiveDatapointsToAlarmHasBeenSet = false;
151
152 int m_consecutiveDatapointsToClear{0};
153 bool m_consecutiveDatapointsToClearHasBeenSet = false;
154
155 StatisticalThreshold m_statisticalThreshold;
156 bool m_statisticalThresholdHasBeenSet = false;
157
158 MachineLearningDetectionConfig m_mlDetectionConfig;
159 bool m_mlDetectionConfigHasBeenSet = false;
160 };
161
162} // namespace Model
163} // namespace IoT
164} // namespace Aws
BehaviorCriteria & WithStatisticalThreshold(StatisticalThresholdT &&value)
BehaviorCriteria & WithMlDetectionConfig(MlDetectionConfigT &&value)
BehaviorCriteria & WithValue(ValueT &&value)
void SetComparisonOperator(ComparisonOperator value)
AWS_IOT_API BehaviorCriteria()=default
ComparisonOperator GetComparisonOperator() const
const MachineLearningDetectionConfig & GetMlDetectionConfig() const
void SetConsecutiveDatapointsToAlarm(int value)
AWS_IOT_API Aws::Utils::Json::JsonValue Jsonize() const
const StatisticalThreshold & GetStatisticalThreshold() const
void SetMlDetectionConfig(MlDetectionConfigT &&value)
BehaviorCriteria & WithDurationSeconds(int value)
BehaviorCriteria & WithConsecutiveDatapointsToClear(int value)
BehaviorCriteria & WithComparisonOperator(ComparisonOperator value)
AWS_IOT_API BehaviorCriteria & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_IOT_API BehaviorCriteria(Aws::Utils::Json::JsonView jsonValue)
BehaviorCriteria & WithConsecutiveDatapointsToAlarm(int value)
void SetStatisticalThreshold(StatisticalThresholdT &&value)
const MetricValue & GetValue() const
Aws::Utils::Json::JsonValue JsonValue