AWS SDK for C++

AWS SDK for C++ Version 1.11.764

Loading...
Searching...
No Matches
HlsManifest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/mediapackage-vod/MediaPackageVod_EXPORTS.h>
9#include <aws/mediapackage-vod/model/AdMarkers.h>
10#include <aws/mediapackage-vod/model/StreamSelection.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace MediaPackageVod {
22namespace Model {
23
30 public:
31 AWS_MEDIAPACKAGEVOD_API HlsManifest() = default;
32 AWS_MEDIAPACKAGEVOD_API HlsManifest(Aws::Utils::Json::JsonView jsonValue);
33 AWS_MEDIAPACKAGEVOD_API HlsManifest& operator=(Aws::Utils::Json::JsonView jsonValue);
34 AWS_MEDIAPACKAGEVOD_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
51 inline AdMarkers GetAdMarkers() const { return m_adMarkers; }
52 inline bool AdMarkersHasBeenSet() const { return m_adMarkersHasBeenSet; }
53 inline void SetAdMarkers(AdMarkers value) {
54 m_adMarkersHasBeenSet = true;
55 m_adMarkers = value;
56 }
58 SetAdMarkers(value);
59 return *this;
60 }
62
64
67 inline bool GetIncludeIframeOnlyStream() const { return m_includeIframeOnlyStream; }
68 inline bool IncludeIframeOnlyStreamHasBeenSet() const { return m_includeIframeOnlyStreamHasBeenSet; }
69 inline void SetIncludeIframeOnlyStream(bool value) {
70 m_includeIframeOnlyStreamHasBeenSet = true;
71 m_includeIframeOnlyStream = value;
72 }
75 return *this;
76 }
78
80
83 inline const Aws::String& GetManifestName() const { return m_manifestName; }
84 inline bool ManifestNameHasBeenSet() const { return m_manifestNameHasBeenSet; }
85 template <typename ManifestNameT = Aws::String>
86 void SetManifestName(ManifestNameT&& value) {
87 m_manifestNameHasBeenSet = true;
88 m_manifestName = std::forward<ManifestNameT>(value);
89 }
90 template <typename ManifestNameT = Aws::String>
91 HlsManifest& WithManifestName(ManifestNameT&& value) {
92 SetManifestName(std::forward<ManifestNameT>(value));
93 return *this;
94 }
96
98
117 inline int GetProgramDateTimeIntervalSeconds() const { return m_programDateTimeIntervalSeconds; }
118 inline bool ProgramDateTimeIntervalSecondsHasBeenSet() const { return m_programDateTimeIntervalSecondsHasBeenSet; }
119 inline void SetProgramDateTimeIntervalSeconds(int value) {
120 m_programDateTimeIntervalSecondsHasBeenSet = true;
121 m_programDateTimeIntervalSeconds = value;
122 }
125 return *this;
126 }
128
130
133 inline bool GetRepeatExtXKey() const { return m_repeatExtXKey; }
134 inline bool RepeatExtXKeyHasBeenSet() const { return m_repeatExtXKeyHasBeenSet; }
135 inline void SetRepeatExtXKey(bool value) {
136 m_repeatExtXKeyHasBeenSet = true;
137 m_repeatExtXKey = value;
138 }
139 inline HlsManifest& WithRepeatExtXKey(bool value) {
140 SetRepeatExtXKey(value);
141 return *this;
142 }
144
146
147 inline const StreamSelection& GetStreamSelection() const { return m_streamSelection; }
148 inline bool StreamSelectionHasBeenSet() const { return m_streamSelectionHasBeenSet; }
149 template <typename StreamSelectionT = StreamSelection>
150 void SetStreamSelection(StreamSelectionT&& value) {
151 m_streamSelectionHasBeenSet = true;
152 m_streamSelection = std::forward<StreamSelectionT>(value);
153 }
154 template <typename StreamSelectionT = StreamSelection>
155 HlsManifest& WithStreamSelection(StreamSelectionT&& value) {
156 SetStreamSelection(std::forward<StreamSelectionT>(value));
157 return *this;
158 }
160 private:
161 AdMarkers m_adMarkers{AdMarkers::NOT_SET};
162
163 bool m_includeIframeOnlyStream{false};
164
165 Aws::String m_manifestName;
166
167 int m_programDateTimeIntervalSeconds{0};
168
169 bool m_repeatExtXKey{false};
170
171 StreamSelection m_streamSelection;
172 bool m_adMarkersHasBeenSet = false;
173 bool m_includeIframeOnlyStreamHasBeenSet = false;
174 bool m_manifestNameHasBeenSet = false;
175 bool m_programDateTimeIntervalSecondsHasBeenSet = false;
176 bool m_repeatExtXKeyHasBeenSet = false;
177 bool m_streamSelectionHasBeenSet = false;
178};
179
180} // namespace Model
181} // namespace MediaPackageVod
182} // namespace Aws
HlsManifest & WithRepeatExtXKey(bool value)
AWS_MEDIAPACKAGEVOD_API Aws::Utils::Json::JsonValue Jsonize() const
const StreamSelection & GetStreamSelection() const
AWS_MEDIAPACKAGEVOD_API HlsManifest(Aws::Utils::Json::JsonView jsonValue)
void SetManifestName(ManifestNameT &&value)
Definition HlsManifest.h:86
HlsManifest & WithAdMarkers(AdMarkers value)
Definition HlsManifest.h:57
HlsManifest & WithProgramDateTimeIntervalSeconds(int value)
const Aws::String & GetManifestName() const
Definition HlsManifest.h:83
HlsManifest & WithManifestName(ManifestNameT &&value)
Definition HlsManifest.h:91
HlsManifest & WithIncludeIframeOnlyStream(bool value)
Definition HlsManifest.h:73
AWS_MEDIAPACKAGEVOD_API HlsManifest & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_MEDIAPACKAGEVOD_API HlsManifest()=default
void SetStreamSelection(StreamSelectionT &&value)
HlsManifest & WithStreamSelection(StreamSelectionT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue