AWS SDK for C++

AWS SDK for C++ Version 1.11.875

Loading...
Searching...
No Matches
PredictiveConfig.h
1
6#pragma once
7#include <aws/connectcampaignsv2/ConnectCampaignsV2_EXPORTS.h>
8#include <aws/connectcampaignsv2/model/PacingStrategy.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace ConnectCampaignsV2 {
21namespace Model {
22
29 public:
30 AWS_CONNECTCAMPAIGNSV2_API PredictiveConfig() = default;
31 AWS_CONNECTCAMPAIGNSV2_API PredictiveConfig(Aws::Utils::Json::JsonView jsonValue);
32 AWS_CONNECTCAMPAIGNSV2_API PredictiveConfig& operator=(Aws::Utils::Json::JsonView jsonValue);
33 AWS_CONNECTCAMPAIGNSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
34
36
37 inline double GetBandwidthAllocation() const { return m_bandwidthAllocation; }
38 inline bool BandwidthAllocationHasBeenSet() const { return m_bandwidthAllocationHasBeenSet; }
39 inline void SetBandwidthAllocation(double value) {
40 m_bandwidthAllocationHasBeenSet = true;
41 m_bandwidthAllocation = value;
42 }
45 return *this;
46 }
48
50
53 inline const Aws::Vector<PacingStrategy>& GetPacingStrategies() const { return m_pacingStrategies; }
54 inline bool PacingStrategiesHasBeenSet() const { return m_pacingStrategiesHasBeenSet; }
55 template <typename PacingStrategiesT = Aws::Vector<PacingStrategy>>
56 void SetPacingStrategies(PacingStrategiesT&& value) {
57 m_pacingStrategiesHasBeenSet = true;
58 m_pacingStrategies = std::forward<PacingStrategiesT>(value);
59 }
60 template <typename PacingStrategiesT = Aws::Vector<PacingStrategy>>
61 PredictiveConfig& WithPacingStrategies(PacingStrategiesT&& value) {
62 SetPacingStrategies(std::forward<PacingStrategiesT>(value));
63 return *this;
64 }
65 template <typename PacingStrategiesT = PacingStrategy>
66 PredictiveConfig& AddPacingStrategies(PacingStrategiesT&& value) {
67 m_pacingStrategiesHasBeenSet = true;
68 m_pacingStrategies.emplace_back(std::forward<PacingStrategiesT>(value));
69 return *this;
70 }
72 private:
73 double m_bandwidthAllocation{0.0};
74
75 Aws::Vector<PacingStrategy> m_pacingStrategies;
76 bool m_bandwidthAllocationHasBeenSet = false;
77 bool m_pacingStrategiesHasBeenSet = false;
78};
79
80} // namespace Model
81} // namespace ConnectCampaignsV2
82} // namespace Aws
const Aws::Vector< PacingStrategy > & GetPacingStrategies() const
PredictiveConfig & WithBandwidthAllocation(double value)
AWS_CONNECTCAMPAIGNSV2_API PredictiveConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_CONNECTCAMPAIGNSV2_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_CONNECTCAMPAIGNSV2_API PredictiveConfig()=default
void SetPacingStrategies(PacingStrategiesT &&value)
PredictiveConfig & WithPacingStrategies(PacingStrategiesT &&value)
PredictiveConfig & AddPacingStrategies(PacingStrategiesT &&value)
AWS_CONNECTCAMPAIGNSV2_API PredictiveConfig(Aws::Utils::Json::JsonView jsonValue)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue