AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
CmafPackage.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/CmafEncryption.h>
11#include <aws/mediapackage/model/HlsManifest.h>
12#include <aws/mediapackage/model/StreamSelection.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace MediaPackage {
24namespace Model {
25
33 public:
34 AWS_MEDIAPACKAGE_API CmafPackage() = default;
35 AWS_MEDIAPACKAGE_API CmafPackage(Aws::Utils::Json::JsonView jsonValue);
36 AWS_MEDIAPACKAGE_API CmafPackage& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_MEDIAPACKAGE_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
41 inline const CmafEncryption& GetEncryption() const { return m_encryption; }
42 inline bool EncryptionHasBeenSet() const { return m_encryptionHasBeenSet; }
43 template <typename EncryptionT = CmafEncryption>
44 void SetEncryption(EncryptionT&& value) {
45 m_encryptionHasBeenSet = true;
46 m_encryption = std::forward<EncryptionT>(value);
47 }
48 template <typename EncryptionT = CmafEncryption>
49 CmafPackage& WithEncryption(EncryptionT&& value) {
50 SetEncryption(std::forward<EncryptionT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::Vector<HlsManifest>& GetHlsManifests() const { return m_hlsManifests; }
60 inline bool HlsManifestsHasBeenSet() const { return m_hlsManifestsHasBeenSet; }
61 template <typename HlsManifestsT = Aws::Vector<HlsManifest>>
62 void SetHlsManifests(HlsManifestsT&& value) {
63 m_hlsManifestsHasBeenSet = true;
64 m_hlsManifests = std::forward<HlsManifestsT>(value);
65 }
66 template <typename HlsManifestsT = Aws::Vector<HlsManifest>>
67 CmafPackage& WithHlsManifests(HlsManifestsT&& value) {
68 SetHlsManifests(std::forward<HlsManifestsT>(value));
69 return *this;
70 }
71 template <typename HlsManifestsT = HlsManifest>
72 CmafPackage& AddHlsManifests(HlsManifestsT&& value) {
73 m_hlsManifestsHasBeenSet = true;
74 m_hlsManifests.emplace_back(std::forward<HlsManifestsT>(value));
75 return *this;
76 }
78
80
86 inline int GetSegmentDurationSeconds() const { return m_segmentDurationSeconds; }
87 inline bool SegmentDurationSecondsHasBeenSet() const { return m_segmentDurationSecondsHasBeenSet; }
88 inline void SetSegmentDurationSeconds(int value) {
89 m_segmentDurationSecondsHasBeenSet = true;
90 m_segmentDurationSeconds = value;
91 }
94 return *this;
95 }
97
99
103 inline const Aws::String& GetSegmentPrefix() const { return m_segmentPrefix; }
104 inline bool SegmentPrefixHasBeenSet() const { return m_segmentPrefixHasBeenSet; }
105 template <typename SegmentPrefixT = Aws::String>
106 void SetSegmentPrefix(SegmentPrefixT&& value) {
107 m_segmentPrefixHasBeenSet = true;
108 m_segmentPrefix = std::forward<SegmentPrefixT>(value);
109 }
110 template <typename SegmentPrefixT = Aws::String>
111 CmafPackage& WithSegmentPrefix(SegmentPrefixT&& value) {
112 SetSegmentPrefix(std::forward<SegmentPrefixT>(value));
113 return *this;
114 }
116
118
119 inline const StreamSelection& GetStreamSelection() const { return m_streamSelection; }
120 inline bool StreamSelectionHasBeenSet() const { return m_streamSelectionHasBeenSet; }
121 template <typename StreamSelectionT = StreamSelection>
122 void SetStreamSelection(StreamSelectionT&& value) {
123 m_streamSelectionHasBeenSet = true;
124 m_streamSelection = std::forward<StreamSelectionT>(value);
125 }
126 template <typename StreamSelectionT = StreamSelection>
127 CmafPackage& WithStreamSelection(StreamSelectionT&& value) {
128 SetStreamSelection(std::forward<StreamSelectionT>(value));
129 return *this;
130 }
132 private:
133 CmafEncryption m_encryption;
134
135 Aws::Vector<HlsManifest> m_hlsManifests;
136
137 int m_segmentDurationSeconds{0};
138
139 Aws::String m_segmentPrefix;
140
141 StreamSelection m_streamSelection;
142 bool m_encryptionHasBeenSet = false;
143 bool m_hlsManifestsHasBeenSet = false;
144 bool m_segmentDurationSecondsHasBeenSet = false;
145 bool m_segmentPrefixHasBeenSet = false;
146 bool m_streamSelectionHasBeenSet = false;
147};
148
149} // namespace Model
150} // namespace MediaPackage
151} // namespace Aws
const Aws::String & GetSegmentPrefix() const
CmafPackage & AddHlsManifests(HlsManifestsT &&value)
Definition CmafPackage.h:72
AWS_MEDIAPACKAGE_API CmafPackage(Aws::Utils::Json::JsonView jsonValue)
AWS_MEDIAPACKAGE_API Aws::Utils::Json::JsonValue Jsonize() const
const CmafEncryption & GetEncryption() const
Definition CmafPackage.h:41
void SetSegmentPrefix(SegmentPrefixT &&value)
CmafPackage & WithEncryption(EncryptionT &&value)
Definition CmafPackage.h:49
const StreamSelection & GetStreamSelection() const
void SetHlsManifests(HlsManifestsT &&value)
Definition CmafPackage.h:62
CmafPackage & WithHlsManifests(HlsManifestsT &&value)
Definition CmafPackage.h:67
CmafPackage & WithSegmentPrefix(SegmentPrefixT &&value)
CmafPackage & WithStreamSelection(StreamSelectionT &&value)
const Aws::Vector< HlsManifest > & GetHlsManifests() const
Definition CmafPackage.h:59
AWS_MEDIAPACKAGE_API CmafPackage & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetEncryption(EncryptionT &&value)
Definition CmafPackage.h:44
CmafPackage & WithSegmentDurationSeconds(int value)
Definition CmafPackage.h:92
void SetStreamSelection(StreamSelectionT &&value)
AWS_MEDIAPACKAGE_API CmafPackage()=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