AWS SDK for C++

AWS SDK for C++ Version 1.11.755

Loading...
Searching...
No Matches
DashPackage.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/mediapackage-vod/MediaPackageVod_EXPORTS.h>
9#include <aws/mediapackage-vod/model/DashEncryption.h>
10#include <aws/mediapackage-vod/model/DashManifest.h>
11#include <aws/mediapackage-vod/model/SegmentTemplateFormat.h>
12#include <aws/mediapackage-vod/model/__PeriodTriggersElement.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace MediaPackageVod {
24namespace Model {
25
33 public:
34 AWS_MEDIAPACKAGEVOD_API DashPackage() = default;
35 AWS_MEDIAPACKAGEVOD_API DashPackage(Aws::Utils::Json::JsonView jsonValue);
36 AWS_MEDIAPACKAGEVOD_API DashPackage& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_MEDIAPACKAGEVOD_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline const Aws::Vector<DashManifest>& GetDashManifests() const { return m_dashManifests; }
44 inline bool DashManifestsHasBeenSet() const { return m_dashManifestsHasBeenSet; }
45 template <typename DashManifestsT = Aws::Vector<DashManifest>>
46 void SetDashManifests(DashManifestsT&& value) {
47 m_dashManifestsHasBeenSet = true;
48 m_dashManifests = std::forward<DashManifestsT>(value);
49 }
50 template <typename DashManifestsT = Aws::Vector<DashManifest>>
51 DashPackage& WithDashManifests(DashManifestsT&& value) {
52 SetDashManifests(std::forward<DashManifestsT>(value));
53 return *this;
54 }
55 template <typename DashManifestsT = DashManifest>
56 DashPackage& AddDashManifests(DashManifestsT&& value) {
57 m_dashManifestsHasBeenSet = true;
58 m_dashManifests.emplace_back(std::forward<DashManifestsT>(value));
59 return *this;
60 }
62
64
65 inline const DashEncryption& GetEncryption() const { return m_encryption; }
66 inline bool EncryptionHasBeenSet() const { return m_encryptionHasBeenSet; }
67 template <typename EncryptionT = DashEncryption>
68 void SetEncryption(EncryptionT&& value) {
69 m_encryptionHasBeenSet = true;
70 m_encryption = std::forward<EncryptionT>(value);
71 }
72 template <typename EncryptionT = DashEncryption>
73 DashPackage& WithEncryption(EncryptionT&& value) {
74 SetEncryption(std::forward<EncryptionT>(value));
75 return *this;
76 }
78
80
88 inline bool GetIncludeEncoderConfigurationInSegments() const { return m_includeEncoderConfigurationInSegments; }
89 inline bool IncludeEncoderConfigurationInSegmentsHasBeenSet() const { return m_includeEncoderConfigurationInSegmentsHasBeenSet; }
91 m_includeEncoderConfigurationInSegmentsHasBeenSet = true;
92 m_includeEncoderConfigurationInSegments = value;
93 }
96 return *this;
97 }
99
101
104 inline bool GetIncludeIframeOnlyStream() const { return m_includeIframeOnlyStream; }
105 inline bool IncludeIframeOnlyStreamHasBeenSet() const { return m_includeIframeOnlyStreamHasBeenSet; }
106 inline void SetIncludeIframeOnlyStream(bool value) {
107 m_includeIframeOnlyStreamHasBeenSet = true;
108 m_includeIframeOnlyStream = value;
109 }
112 return *this;
113 }
115
117
128 inline const Aws::Vector<__PeriodTriggersElement>& GetPeriodTriggers() const { return m_periodTriggers; }
129 inline bool PeriodTriggersHasBeenSet() const { return m_periodTriggersHasBeenSet; }
130 template <typename PeriodTriggersT = Aws::Vector<__PeriodTriggersElement>>
131 void SetPeriodTriggers(PeriodTriggersT&& value) {
132 m_periodTriggersHasBeenSet = true;
133 m_periodTriggers = std::forward<PeriodTriggersT>(value);
134 }
135 template <typename PeriodTriggersT = Aws::Vector<__PeriodTriggersElement>>
136 DashPackage& WithPeriodTriggers(PeriodTriggersT&& value) {
137 SetPeriodTriggers(std::forward<PeriodTriggersT>(value));
138 return *this;
139 }
141 m_periodTriggersHasBeenSet = true;
142 m_periodTriggers.push_back(value);
143 return *this;
144 }
146
148
154 inline int GetSegmentDurationSeconds() const { return m_segmentDurationSeconds; }
155 inline bool SegmentDurationSecondsHasBeenSet() const { return m_segmentDurationSecondsHasBeenSet; }
156 inline void SetSegmentDurationSeconds(int value) {
157 m_segmentDurationSecondsHasBeenSet = true;
158 m_segmentDurationSeconds = value;
159 }
162 return *this;
163 }
165
167
175 inline SegmentTemplateFormat GetSegmentTemplateFormat() const { return m_segmentTemplateFormat; }
176 inline bool SegmentTemplateFormatHasBeenSet() const { return m_segmentTemplateFormatHasBeenSet; }
178 m_segmentTemplateFormatHasBeenSet = true;
179 m_segmentTemplateFormat = value;
180 }
183 return *this;
184 }
186 private:
187 Aws::Vector<DashManifest> m_dashManifests;
188
189 DashEncryption m_encryption;
190
191 bool m_includeEncoderConfigurationInSegments{false};
192
193 bool m_includeIframeOnlyStream{false};
194
196
197 int m_segmentDurationSeconds{0};
198
200 bool m_dashManifestsHasBeenSet = false;
201 bool m_encryptionHasBeenSet = false;
202 bool m_includeEncoderConfigurationInSegmentsHasBeenSet = false;
203 bool m_includeIframeOnlyStreamHasBeenSet = false;
204 bool m_periodTriggersHasBeenSet = false;
205 bool m_segmentDurationSecondsHasBeenSet = false;
206 bool m_segmentTemplateFormatHasBeenSet = false;
207};
208
209} // namespace Model
210} // namespace MediaPackageVod
211} // namespace Aws
DashPackage & WithSegmentTemplateFormat(SegmentTemplateFormat value)
SegmentTemplateFormat GetSegmentTemplateFormat() const
AWS_MEDIAPACKAGEVOD_API DashPackage(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< __PeriodTriggersElement > & GetPeriodTriggers() const
AWS_MEDIAPACKAGEVOD_API DashPackage()=default
void SetDashManifests(DashManifestsT &&value)
Definition DashPackage.h:46
bool IncludeEncoderConfigurationInSegmentsHasBeenSet() const
Definition DashPackage.h:89
void SetEncryption(EncryptionT &&value)
Definition DashPackage.h:68
DashPackage & AddDashManifests(DashManifestsT &&value)
Definition DashPackage.h:56
DashPackage & WithPeriodTriggers(PeriodTriggersT &&value)
void SetSegmentTemplateFormat(SegmentTemplateFormat value)
DashPackage & WithEncryption(EncryptionT &&value)
Definition DashPackage.h:73
void SetPeriodTriggers(PeriodTriggersT &&value)
AWS_MEDIAPACKAGEVOD_API DashPackage & operator=(Aws::Utils::Json::JsonView jsonValue)
DashPackage & AddPeriodTriggers(__PeriodTriggersElement value)
const DashEncryption & GetEncryption() const
Definition DashPackage.h:65
DashPackage & WithIncludeIframeOnlyStream(bool value)
const Aws::Vector< DashManifest > & GetDashManifests() const
Definition DashPackage.h:43
DashPackage & WithDashManifests(DashManifestsT &&value)
Definition DashPackage.h:51
void SetIncludeEncoderConfigurationInSegments(bool value)
Definition DashPackage.h:90
DashPackage & WithSegmentDurationSeconds(int value)
AWS_MEDIAPACKAGEVOD_API Aws::Utils::Json::JsonValue Jsonize() const
DashPackage & WithIncludeEncoderConfigurationInSegments(bool value)
Definition DashPackage.h:94
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue