AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
DashPackage.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/mediapackage/MediaPackage_EXPORTS.h>
10#include <aws/mediapackage/model/AdsOnDeliveryRestrictions.h>
11#include <aws/mediapackage/model/DashEncryption.h>
12#include <aws/mediapackage/model/ManifestLayout.h>
13#include <aws/mediapackage/model/Profile.h>
14#include <aws/mediapackage/model/SegmentTemplateFormat.h>
15#include <aws/mediapackage/model/StreamSelection.h>
16#include <aws/mediapackage/model/UtcTiming.h>
17#include <aws/mediapackage/model/__AdTriggersElement.h>
18#include <aws/mediapackage/model/__PeriodTriggersElement.h>
19
20#include <utility>
21
22namespace Aws {
23namespace Utils {
24namespace Json {
25class JsonValue;
26class JsonView;
27} // namespace Json
28} // namespace Utils
29namespace MediaPackage {
30namespace Model {
31
39 public:
40 AWS_MEDIAPACKAGE_API DashPackage() = default;
41 AWS_MEDIAPACKAGE_API DashPackage(Aws::Utils::Json::JsonView jsonValue);
42 AWS_MEDIAPACKAGE_API DashPackage& operator=(Aws::Utils::Json::JsonView jsonValue);
43 AWS_MEDIAPACKAGE_API Aws::Utils::Json::JsonValue Jsonize() const;
44
46
47 inline const Aws::Vector<__AdTriggersElement>& GetAdTriggers() const { return m_adTriggers; }
48 inline bool AdTriggersHasBeenSet() const { return m_adTriggersHasBeenSet; }
49 template <typename AdTriggersT = Aws::Vector<__AdTriggersElement>>
50 void SetAdTriggers(AdTriggersT&& value) {
51 m_adTriggersHasBeenSet = true;
52 m_adTriggers = std::forward<AdTriggersT>(value);
53 }
54 template <typename AdTriggersT = Aws::Vector<__AdTriggersElement>>
55 DashPackage& WithAdTriggers(AdTriggersT&& value) {
56 SetAdTriggers(std::forward<AdTriggersT>(value));
57 return *this;
58 }
60 m_adTriggersHasBeenSet = true;
61 m_adTriggers.push_back(value);
62 return *this;
63 }
65
67
68 inline AdsOnDeliveryRestrictions GetAdsOnDeliveryRestrictions() const { return m_adsOnDeliveryRestrictions; }
69 inline bool AdsOnDeliveryRestrictionsHasBeenSet() const { return m_adsOnDeliveryRestrictionsHasBeenSet; }
71 m_adsOnDeliveryRestrictionsHasBeenSet = true;
72 m_adsOnDeliveryRestrictions = value;
73 }
76 return *this;
77 }
79
81
82 inline const DashEncryption& GetEncryption() const { return m_encryption; }
83 inline bool EncryptionHasBeenSet() const { return m_encryptionHasBeenSet; }
84 template <typename EncryptionT = DashEncryption>
85 void SetEncryption(EncryptionT&& value) {
86 m_encryptionHasBeenSet = true;
87 m_encryption = std::forward<EncryptionT>(value);
88 }
89 template <typename EncryptionT = DashEncryption>
90 DashPackage& WithEncryption(EncryptionT&& value) {
91 SetEncryption(std::forward<EncryptionT>(value));
92 return *this;
93 }
95
97
100 inline bool GetIncludeIframeOnlyStream() const { return m_includeIframeOnlyStream; }
101 inline bool IncludeIframeOnlyStreamHasBeenSet() const { return m_includeIframeOnlyStreamHasBeenSet; }
102 inline void SetIncludeIframeOnlyStream(bool value) {
103 m_includeIframeOnlyStreamHasBeenSet = true;
104 m_includeIframeOnlyStream = value;
105 }
108 return *this;
109 }
111
113
121 inline ManifestLayout GetManifestLayout() const { return m_manifestLayout; }
122 inline bool ManifestLayoutHasBeenSet() const { return m_manifestLayoutHasBeenSet; }
124 m_manifestLayoutHasBeenSet = true;
125 m_manifestLayout = value;
126 }
128 SetManifestLayout(value);
129 return *this;
130 }
132
134
137 inline int GetManifestWindowSeconds() const { return m_manifestWindowSeconds; }
138 inline bool ManifestWindowSecondsHasBeenSet() const { return m_manifestWindowSecondsHasBeenSet; }
139 inline void SetManifestWindowSeconds(int value) {
140 m_manifestWindowSecondsHasBeenSet = true;
141 m_manifestWindowSeconds = value;
142 }
145 return *this;
146 }
148
150
154 inline int GetMinBufferTimeSeconds() const { return m_minBufferTimeSeconds; }
155 inline bool MinBufferTimeSecondsHasBeenSet() const { return m_minBufferTimeSecondsHasBeenSet; }
156 inline void SetMinBufferTimeSeconds(int value) {
157 m_minBufferTimeSecondsHasBeenSet = true;
158 m_minBufferTimeSeconds = value;
159 }
162 return *this;
163 }
165
167
171 inline int GetMinUpdatePeriodSeconds() const { return m_minUpdatePeriodSeconds; }
172 inline bool MinUpdatePeriodSecondsHasBeenSet() const { return m_minUpdatePeriodSecondsHasBeenSet; }
173 inline void SetMinUpdatePeriodSeconds(int value) {
174 m_minUpdatePeriodSecondsHasBeenSet = true;
175 m_minUpdatePeriodSeconds = value;
176 }
179 return *this;
180 }
182
184
195 inline const Aws::Vector<__PeriodTriggersElement>& GetPeriodTriggers() const { return m_periodTriggers; }
196 inline bool PeriodTriggersHasBeenSet() const { return m_periodTriggersHasBeenSet; }
197 template <typename PeriodTriggersT = Aws::Vector<__PeriodTriggersElement>>
198 void SetPeriodTriggers(PeriodTriggersT&& value) {
199 m_periodTriggersHasBeenSet = true;
200 m_periodTriggers = std::forward<PeriodTriggersT>(value);
201 }
202 template <typename PeriodTriggersT = Aws::Vector<__PeriodTriggersElement>>
203 DashPackage& WithPeriodTriggers(PeriodTriggersT&& value) {
204 SetPeriodTriggers(std::forward<PeriodTriggersT>(value));
205 return *this;
206 }
208 m_periodTriggersHasBeenSet = true;
209 m_periodTriggers.push_back(value);
210 return *this;
211 }
213
215
220 inline Profile GetProfile() const { return m_profile; }
221 inline bool ProfileHasBeenSet() const { return m_profileHasBeenSet; }
222 inline void SetProfile(Profile value) {
223 m_profileHasBeenSet = true;
224 m_profile = value;
225 }
227 SetProfile(value);
228 return *this;
229 }
231
233
239 inline int GetSegmentDurationSeconds() const { return m_segmentDurationSeconds; }
240 inline bool SegmentDurationSecondsHasBeenSet() const { return m_segmentDurationSecondsHasBeenSet; }
241 inline void SetSegmentDurationSeconds(int value) {
242 m_segmentDurationSecondsHasBeenSet = true;
243 m_segmentDurationSeconds = value;
244 }
247 return *this;
248 }
250
252
260 inline SegmentTemplateFormat GetSegmentTemplateFormat() const { return m_segmentTemplateFormat; }
261 inline bool SegmentTemplateFormatHasBeenSet() const { return m_segmentTemplateFormatHasBeenSet; }
263 m_segmentTemplateFormatHasBeenSet = true;
264 m_segmentTemplateFormat = value;
265 }
268 return *this;
269 }
271
273
274 inline const StreamSelection& GetStreamSelection() const { return m_streamSelection; }
275 inline bool StreamSelectionHasBeenSet() const { return m_streamSelectionHasBeenSet; }
276 template <typename StreamSelectionT = StreamSelection>
277 void SetStreamSelection(StreamSelectionT&& value) {
278 m_streamSelectionHasBeenSet = true;
279 m_streamSelection = std::forward<StreamSelectionT>(value);
280 }
281 template <typename StreamSelectionT = StreamSelection>
282 DashPackage& WithStreamSelection(StreamSelectionT&& value) {
283 SetStreamSelection(std::forward<StreamSelectionT>(value));
284 return *this;
285 }
287
289
292 inline int GetSuggestedPresentationDelaySeconds() const { return m_suggestedPresentationDelaySeconds; }
293 inline bool SuggestedPresentationDelaySecondsHasBeenSet() const { return m_suggestedPresentationDelaySecondsHasBeenSet; }
295 m_suggestedPresentationDelaySecondsHasBeenSet = true;
296 m_suggestedPresentationDelaySeconds = value;
297 }
300 return *this;
301 }
303
305
309 inline UtcTiming GetUtcTiming() const { return m_utcTiming; }
310 inline bool UtcTimingHasBeenSet() const { return m_utcTimingHasBeenSet; }
311 inline void SetUtcTiming(UtcTiming value) {
312 m_utcTimingHasBeenSet = true;
313 m_utcTiming = value;
314 }
316 SetUtcTiming(value);
317 return *this;
318 }
320
322
326 inline const Aws::String& GetUtcTimingUri() const { return m_utcTimingUri; }
327 inline bool UtcTimingUriHasBeenSet() const { return m_utcTimingUriHasBeenSet; }
328 template <typename UtcTimingUriT = Aws::String>
329 void SetUtcTimingUri(UtcTimingUriT&& value) {
330 m_utcTimingUriHasBeenSet = true;
331 m_utcTimingUri = std::forward<UtcTimingUriT>(value);
332 }
333 template <typename UtcTimingUriT = Aws::String>
334 DashPackage& WithUtcTimingUri(UtcTimingUriT&& value) {
335 SetUtcTimingUri(std::forward<UtcTimingUriT>(value));
336 return *this;
337 }
339 private:
341
343
344 DashEncryption m_encryption;
345
346 bool m_includeIframeOnlyStream{false};
347
348 ManifestLayout m_manifestLayout{ManifestLayout::NOT_SET};
349
350 int m_manifestWindowSeconds{0};
351
352 int m_minBufferTimeSeconds{0};
353
354 int m_minUpdatePeriodSeconds{0};
355
357
358 Profile m_profile{Profile::NOT_SET};
359
360 int m_segmentDurationSeconds{0};
361
363
364 StreamSelection m_streamSelection;
365
366 int m_suggestedPresentationDelaySeconds{0};
367
368 UtcTiming m_utcTiming{UtcTiming::NOT_SET};
369
370 Aws::String m_utcTimingUri;
371 bool m_adTriggersHasBeenSet = false;
372 bool m_adsOnDeliveryRestrictionsHasBeenSet = false;
373 bool m_encryptionHasBeenSet = false;
374 bool m_includeIframeOnlyStreamHasBeenSet = false;
375 bool m_manifestLayoutHasBeenSet = false;
376 bool m_manifestWindowSecondsHasBeenSet = false;
377 bool m_minBufferTimeSecondsHasBeenSet = false;
378 bool m_minUpdatePeriodSecondsHasBeenSet = false;
379 bool m_periodTriggersHasBeenSet = false;
380 bool m_profileHasBeenSet = false;
381 bool m_segmentDurationSecondsHasBeenSet = false;
382 bool m_segmentTemplateFormatHasBeenSet = false;
383 bool m_streamSelectionHasBeenSet = false;
384 bool m_suggestedPresentationDelaySecondsHasBeenSet = false;
385 bool m_utcTimingHasBeenSet = false;
386 bool m_utcTimingUriHasBeenSet = false;
387};
388
389} // namespace Model
390} // namespace MediaPackage
391} // namespace Aws
DashPackage & WithStreamSelection(StreamSelectionT &&value)
DashPackage & WithSuggestedPresentationDelaySeconds(int value)
AWS_MEDIAPACKAGE_API Aws::Utils::Json::JsonValue Jsonize() const
void SetSegmentTemplateFormat(SegmentTemplateFormat value)
DashPackage & WithAdsOnDeliveryRestrictions(AdsOnDeliveryRestrictions value)
Definition DashPackage.h:74
AWS_MEDIAPACKAGE_API DashPackage & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetStreamSelection(StreamSelectionT &&value)
DashPackage & WithPeriodTriggers(PeriodTriggersT &&value)
AdsOnDeliveryRestrictions GetAdsOnDeliveryRestrictions() const
Definition DashPackage.h:68
void SetSuggestedPresentationDelaySeconds(int value)
bool SuggestedPresentationDelaySecondsHasBeenSet() const
DashPackage & WithSegmentTemplateFormat(SegmentTemplateFormat value)
SegmentTemplateFormat GetSegmentTemplateFormat() const
ManifestLayout GetManifestLayout() const
DashPackage & WithMinBufferTimeSeconds(int value)
DashPackage & WithSegmentDurationSeconds(int value)
DashPackage & AddPeriodTriggers(__PeriodTriggersElement value)
DashPackage & WithProfile(Profile value)
void SetUtcTimingUri(UtcTimingUriT &&value)
void SetEncryption(EncryptionT &&value)
Definition DashPackage.h:85
DashPackage & WithUtcTimingUri(UtcTimingUriT &&value)
void SetAdsOnDeliveryRestrictions(AdsOnDeliveryRestrictions value)
Definition DashPackage.h:70
AWS_MEDIAPACKAGE_API DashPackage(Aws::Utils::Json::JsonView jsonValue)
DashPackage & WithAdTriggers(AdTriggersT &&value)
Definition DashPackage.h:55
DashPackage & WithManifestLayout(ManifestLayout value)
DashPackage & WithEncryption(EncryptionT &&value)
Definition DashPackage.h:90
void SetAdTriggers(AdTriggersT &&value)
Definition DashPackage.h:50
const DashEncryption & GetEncryption() const
Definition DashPackage.h:82
DashPackage & AddAdTriggers(__AdTriggersElement value)
Definition DashPackage.h:59
void SetPeriodTriggers(PeriodTriggersT &&value)
const Aws::Vector< __AdTriggersElement > & GetAdTriggers() const
Definition DashPackage.h:47
void SetManifestLayout(ManifestLayout value)
DashPackage & WithUtcTiming(UtcTiming value)
const Aws::Vector< __PeriodTriggersElement > & GetPeriodTriggers() const
DashPackage & WithMinUpdatePeriodSeconds(int value)
const Aws::String & GetUtcTimingUri() const
DashPackage & WithIncludeIframeOnlyStream(bool value)
DashPackage & WithManifestWindowSeconds(int value)
const StreamSelection & GetStreamSelection() const
AWS_MEDIAPACKAGE_API DashPackage()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue