AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
Multiplex.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/medialive/MediaLive_EXPORTS.h>
11#include <aws/medialive/model/MultiplexOutputDestination.h>
12#include <aws/medialive/model/MultiplexSettings.h>
13#include <aws/medialive/model/MultiplexState.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace MediaLive {
25namespace Model {
26
32class Multiplex {
33 public:
34 AWS_MEDIALIVE_API Multiplex() = default;
35 AWS_MEDIALIVE_API Multiplex(Aws::Utils::Json::JsonView jsonValue);
36 AWS_MEDIALIVE_API Multiplex& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline const Aws::String& GetArn() const { return m_arn; }
44 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
45 template <typename ArnT = Aws::String>
46 void SetArn(ArnT&& value) {
47 m_arnHasBeenSet = true;
48 m_arn = std::forward<ArnT>(value);
49 }
50 template <typename ArnT = Aws::String>
51 Multiplex& WithArn(ArnT&& value) {
52 SetArn(std::forward<ArnT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::Vector<Aws::String>& GetAvailabilityZones() const { return m_availabilityZones; }
62 inline bool AvailabilityZonesHasBeenSet() const { return m_availabilityZonesHasBeenSet; }
63 template <typename AvailabilityZonesT = Aws::Vector<Aws::String>>
64 void SetAvailabilityZones(AvailabilityZonesT&& value) {
65 m_availabilityZonesHasBeenSet = true;
66 m_availabilityZones = std::forward<AvailabilityZonesT>(value);
67 }
68 template <typename AvailabilityZonesT = Aws::Vector<Aws::String>>
69 Multiplex& WithAvailabilityZones(AvailabilityZonesT&& value) {
70 SetAvailabilityZones(std::forward<AvailabilityZonesT>(value));
71 return *this;
72 }
73 template <typename AvailabilityZonesT = Aws::String>
74 Multiplex& AddAvailabilityZones(AvailabilityZonesT&& value) {
75 m_availabilityZonesHasBeenSet = true;
76 m_availabilityZones.emplace_back(std::forward<AvailabilityZonesT>(value));
77 return *this;
78 }
80
82
85 inline const Aws::Vector<MultiplexOutputDestination>& GetDestinations() const { return m_destinations; }
86 inline bool DestinationsHasBeenSet() const { return m_destinationsHasBeenSet; }
87 template <typename DestinationsT = Aws::Vector<MultiplexOutputDestination>>
88 void SetDestinations(DestinationsT&& value) {
89 m_destinationsHasBeenSet = true;
90 m_destinations = std::forward<DestinationsT>(value);
91 }
92 template <typename DestinationsT = Aws::Vector<MultiplexOutputDestination>>
93 Multiplex& WithDestinations(DestinationsT&& value) {
94 SetDestinations(std::forward<DestinationsT>(value));
95 return *this;
96 }
97 template <typename DestinationsT = MultiplexOutputDestination>
98 Multiplex& AddDestinations(DestinationsT&& value) {
99 m_destinationsHasBeenSet = true;
100 m_destinations.emplace_back(std::forward<DestinationsT>(value));
101 return *this;
102 }
104
106
109 inline const Aws::String& GetId() const { return m_id; }
110 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
111 template <typename IdT = Aws::String>
112 void SetId(IdT&& value) {
113 m_idHasBeenSet = true;
114 m_id = std::forward<IdT>(value);
115 }
116 template <typename IdT = Aws::String>
117 Multiplex& WithId(IdT&& value) {
118 SetId(std::forward<IdT>(value));
119 return *this;
120 }
122
124
127 inline const MultiplexSettings& GetMultiplexSettings() const { return m_multiplexSettings; }
128 inline bool MultiplexSettingsHasBeenSet() const { return m_multiplexSettingsHasBeenSet; }
129 template <typename MultiplexSettingsT = MultiplexSettings>
130 void SetMultiplexSettings(MultiplexSettingsT&& value) {
131 m_multiplexSettingsHasBeenSet = true;
132 m_multiplexSettings = std::forward<MultiplexSettingsT>(value);
133 }
134 template <typename MultiplexSettingsT = MultiplexSettings>
135 Multiplex& WithMultiplexSettings(MultiplexSettingsT&& value) {
136 SetMultiplexSettings(std::forward<MultiplexSettingsT>(value));
137 return *this;
138 }
140
142
145 inline const Aws::String& GetName() const { return m_name; }
146 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
147 template <typename NameT = Aws::String>
148 void SetName(NameT&& value) {
149 m_nameHasBeenSet = true;
150 m_name = std::forward<NameT>(value);
151 }
152 template <typename NameT = Aws::String>
153 Multiplex& WithName(NameT&& value) {
154 SetName(std::forward<NameT>(value));
155 return *this;
156 }
158
160
163 inline int GetPipelinesRunningCount() const { return m_pipelinesRunningCount; }
164 inline bool PipelinesRunningCountHasBeenSet() const { return m_pipelinesRunningCountHasBeenSet; }
165 inline void SetPipelinesRunningCount(int value) {
166 m_pipelinesRunningCountHasBeenSet = true;
167 m_pipelinesRunningCount = value;
168 }
171 return *this;
172 }
174
176
179 inline int GetProgramCount() const { return m_programCount; }
180 inline bool ProgramCountHasBeenSet() const { return m_programCountHasBeenSet; }
181 inline void SetProgramCount(int value) {
182 m_programCountHasBeenSet = true;
183 m_programCount = value;
184 }
185 inline Multiplex& WithProgramCount(int value) {
186 SetProgramCount(value);
187 return *this;
188 }
190
192
195 inline MultiplexState GetState() const { return m_state; }
196 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
197 inline void SetState(MultiplexState value) {
198 m_stateHasBeenSet = true;
199 m_state = value;
200 }
202 SetState(value);
203 return *this;
204 }
206
208
211 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
212 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
213 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
214 void SetTags(TagsT&& value) {
215 m_tagsHasBeenSet = true;
216 m_tags = std::forward<TagsT>(value);
217 }
218 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
219 Multiplex& WithTags(TagsT&& value) {
220 SetTags(std::forward<TagsT>(value));
221 return *this;
222 }
223 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
224 Multiplex& AddTags(TagsKeyT&& key, TagsValueT&& value) {
225 m_tagsHasBeenSet = true;
226 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
227 return *this;
228 }
230 private:
231 Aws::String m_arn;
232
233 Aws::Vector<Aws::String> m_availabilityZones;
234
236
237 Aws::String m_id;
238
239 MultiplexSettings m_multiplexSettings;
240
241 Aws::String m_name;
242
243 int m_pipelinesRunningCount{0};
244
245 int m_programCount{0};
246
248
250 bool m_arnHasBeenSet = false;
251 bool m_availabilityZonesHasBeenSet = false;
252 bool m_destinationsHasBeenSet = false;
253 bool m_idHasBeenSet = false;
254 bool m_multiplexSettingsHasBeenSet = false;
255 bool m_nameHasBeenSet = false;
256 bool m_pipelinesRunningCountHasBeenSet = false;
257 bool m_programCountHasBeenSet = false;
258 bool m_stateHasBeenSet = false;
259 bool m_tagsHasBeenSet = false;
260};
261
262} // namespace Model
263} // namespace MediaLive
264} // namespace Aws
void SetName(NameT &&value)
Definition Multiplex.h:148
MultiplexState GetState() const
Definition Multiplex.h:195
Multiplex & AddDestinations(DestinationsT &&value)
Definition Multiplex.h:98
bool PipelinesRunningCountHasBeenSet() const
Definition Multiplex.h:164
const Aws::String & GetId() const
Definition Multiplex.h:109
void SetTags(TagsT &&value)
Definition Multiplex.h:214
Multiplex & WithArn(ArnT &&value)
Definition Multiplex.h:51
Multiplex & AddTags(TagsKeyT &&key, TagsValueT &&value)
Definition Multiplex.h:224
void SetAvailabilityZones(AvailabilityZonesT &&value)
Definition Multiplex.h:64
Multiplex & AddAvailabilityZones(AvailabilityZonesT &&value)
Definition Multiplex.h:74
const Aws::String & GetArn() const
Definition Multiplex.h:43
void SetPipelinesRunningCount(int value)
Definition Multiplex.h:165
const MultiplexSettings & GetMultiplexSettings() const
Definition Multiplex.h:127
const Aws::String & GetName() const
Definition Multiplex.h:145
Multiplex & WithAvailabilityZones(AvailabilityZonesT &&value)
Definition Multiplex.h:69
void SetMultiplexSettings(MultiplexSettingsT &&value)
Definition Multiplex.h:130
const Aws::Map< Aws::String, Aws::String > & GetTags() const
Definition Multiplex.h:211
Multiplex & WithPipelinesRunningCount(int value)
Definition Multiplex.h:169
void SetState(MultiplexState value)
Definition Multiplex.h:197
AWS_MEDIALIVE_API Multiplex(Aws::Utils::Json::JsonView jsonValue)
Multiplex & WithMultiplexSettings(MultiplexSettingsT &&value)
Definition Multiplex.h:135
void SetDestinations(DestinationsT &&value)
Definition Multiplex.h:88
AWS_MEDIALIVE_API Multiplex & operator=(Aws::Utils::Json::JsonView jsonValue)
Multiplex & WithDestinations(DestinationsT &&value)
Definition Multiplex.h:93
bool AvailabilityZonesHasBeenSet() const
Definition Multiplex.h:62
Multiplex & WithProgramCount(int value)
Definition Multiplex.h:185
Multiplex & WithName(NameT &&value)
Definition Multiplex.h:153
Multiplex & WithState(MultiplexState value)
Definition Multiplex.h:201
Multiplex & WithId(IdT &&value)
Definition Multiplex.h:117
AWS_MEDIALIVE_API Multiplex()=default
Multiplex & WithTags(TagsT &&value)
Definition Multiplex.h:219
AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const
bool MultiplexSettingsHasBeenSet() const
Definition Multiplex.h:128
const Aws::Vector< Aws::String > & GetAvailabilityZones() const
Definition Multiplex.h:61
const Aws::Vector< MultiplexOutputDestination > & GetDestinations() const
Definition Multiplex.h:85
void SetArn(ArnT &&value)
Definition Multiplex.h:46
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue