AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
OutputDestination.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/medialive/MediaLive_EXPORTS.h>
10#include <aws/medialive/model/MediaConnectRouterOutputDestinationSettings.h>
11#include <aws/medialive/model/MediaPackageOutputDestinationSettings.h>
12#include <aws/medialive/model/MultiplexProgramChannelDestinationSettings.h>
13#include <aws/medialive/model/OutputDestinationSettings.h>
14#include <aws/medialive/model/SrtOutputDestinationSettings.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace MediaLive {
26namespace Model {
27
34 public:
35 AWS_MEDIALIVE_API OutputDestination() = default;
36 AWS_MEDIALIVE_API OutputDestination(Aws::Utils::Json::JsonView jsonValue);
38 AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
44 inline const Aws::String& GetId() const { return m_id; }
45 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
46 template <typename IdT = Aws::String>
47 void SetId(IdT&& value) {
48 m_idHasBeenSet = true;
49 m_id = std::forward<IdT>(value);
50 }
51 template <typename IdT = Aws::String>
52 OutputDestination& WithId(IdT&& value) {
53 SetId(std::forward<IdT>(value));
54 return *this;
55 }
57
59
63 inline const Aws::Vector<MediaPackageOutputDestinationSettings>& GetMediaPackageSettings() const { return m_mediaPackageSettings; }
64 inline bool MediaPackageSettingsHasBeenSet() const { return m_mediaPackageSettingsHasBeenSet; }
65 template <typename MediaPackageSettingsT = Aws::Vector<MediaPackageOutputDestinationSettings>>
66 void SetMediaPackageSettings(MediaPackageSettingsT&& value) {
67 m_mediaPackageSettingsHasBeenSet = true;
68 m_mediaPackageSettings = std::forward<MediaPackageSettingsT>(value);
69 }
70 template <typename MediaPackageSettingsT = Aws::Vector<MediaPackageOutputDestinationSettings>>
71 OutputDestination& WithMediaPackageSettings(MediaPackageSettingsT&& value) {
72 SetMediaPackageSettings(std::forward<MediaPackageSettingsT>(value));
73 return *this;
74 }
75 template <typename MediaPackageSettingsT = MediaPackageOutputDestinationSettings>
76 OutputDestination& AddMediaPackageSettings(MediaPackageSettingsT&& value) {
77 m_mediaPackageSettingsHasBeenSet = true;
78 m_mediaPackageSettings.emplace_back(std::forward<MediaPackageSettingsT>(value));
79 return *this;
80 }
82
84
87 inline const MultiplexProgramChannelDestinationSettings& GetMultiplexSettings() const { return m_multiplexSettings; }
88 inline bool MultiplexSettingsHasBeenSet() const { return m_multiplexSettingsHasBeenSet; }
89 template <typename MultiplexSettingsT = MultiplexProgramChannelDestinationSettings>
90 void SetMultiplexSettings(MultiplexSettingsT&& value) {
91 m_multiplexSettingsHasBeenSet = true;
92 m_multiplexSettings = std::forward<MultiplexSettingsT>(value);
93 }
94 template <typename MultiplexSettingsT = MultiplexProgramChannelDestinationSettings>
95 OutputDestination& WithMultiplexSettings(MultiplexSettingsT&& value) {
96 SetMultiplexSettings(std::forward<MultiplexSettingsT>(value));
97 return *this;
98 }
100
102
106 inline const Aws::Vector<OutputDestinationSettings>& GetSettings() const { return m_settings; }
107 inline bool SettingsHasBeenSet() const { return m_settingsHasBeenSet; }
108 template <typename SettingsT = Aws::Vector<OutputDestinationSettings>>
109 void SetSettings(SettingsT&& value) {
110 m_settingsHasBeenSet = true;
111 m_settings = std::forward<SettingsT>(value);
112 }
113 template <typename SettingsT = Aws::Vector<OutputDestinationSettings>>
114 OutputDestination& WithSettings(SettingsT&& value) {
115 SetSettings(std::forward<SettingsT>(value));
116 return *this;
117 }
118 template <typename SettingsT = OutputDestinationSettings>
119 OutputDestination& AddSettings(SettingsT&& value) {
120 m_settingsHasBeenSet = true;
121 m_settings.emplace_back(std::forward<SettingsT>(value));
122 return *this;
123 }
125
127
130 inline const Aws::Vector<SrtOutputDestinationSettings>& GetSrtSettings() const { return m_srtSettings; }
131 inline bool SrtSettingsHasBeenSet() const { return m_srtSettingsHasBeenSet; }
132 template <typename SrtSettingsT = Aws::Vector<SrtOutputDestinationSettings>>
133 void SetSrtSettings(SrtSettingsT&& value) {
134 m_srtSettingsHasBeenSet = true;
135 m_srtSettings = std::forward<SrtSettingsT>(value);
136 }
137 template <typename SrtSettingsT = Aws::Vector<SrtOutputDestinationSettings>>
138 OutputDestination& WithSrtSettings(SrtSettingsT&& value) {
139 SetSrtSettings(std::forward<SrtSettingsT>(value));
140 return *this;
141 }
142 template <typename SrtSettingsT = SrtOutputDestinationSettings>
143 OutputDestination& AddSrtSettings(SrtSettingsT&& value) {
144 m_srtSettingsHasBeenSet = true;
145 m_srtSettings.emplace_back(std::forward<SrtSettingsT>(value));
146 return *this;
147 }
149
151
155 inline const Aws::Vector<Aws::String>& GetLogicalInterfaceNames() const { return m_logicalInterfaceNames; }
156 inline bool LogicalInterfaceNamesHasBeenSet() const { return m_logicalInterfaceNamesHasBeenSet; }
157 template <typename LogicalInterfaceNamesT = Aws::Vector<Aws::String>>
158 void SetLogicalInterfaceNames(LogicalInterfaceNamesT&& value) {
159 m_logicalInterfaceNamesHasBeenSet = true;
160 m_logicalInterfaceNames = std::forward<LogicalInterfaceNamesT>(value);
161 }
162 template <typename LogicalInterfaceNamesT = Aws::Vector<Aws::String>>
163 OutputDestination& WithLogicalInterfaceNames(LogicalInterfaceNamesT&& value) {
164 SetLogicalInterfaceNames(std::forward<LogicalInterfaceNamesT>(value));
165 return *this;
166 }
167 template <typename LogicalInterfaceNamesT = Aws::String>
168 OutputDestination& AddLogicalInterfaceNames(LogicalInterfaceNamesT&& value) {
169 m_logicalInterfaceNamesHasBeenSet = true;
170 m_logicalInterfaceNames.emplace_back(std::forward<LogicalInterfaceNamesT>(value));
171 return *this;
172 }
174
176
181 return m_mediaConnectRouterSettings;
182 }
183 inline bool MediaConnectRouterSettingsHasBeenSet() const { return m_mediaConnectRouterSettingsHasBeenSet; }
184 template <typename MediaConnectRouterSettingsT = Aws::Vector<MediaConnectRouterOutputDestinationSettings>>
185 void SetMediaConnectRouterSettings(MediaConnectRouterSettingsT&& value) {
186 m_mediaConnectRouterSettingsHasBeenSet = true;
187 m_mediaConnectRouterSettings = std::forward<MediaConnectRouterSettingsT>(value);
188 }
189 template <typename MediaConnectRouterSettingsT = Aws::Vector<MediaConnectRouterOutputDestinationSettings>>
190 OutputDestination& WithMediaConnectRouterSettings(MediaConnectRouterSettingsT&& value) {
191 SetMediaConnectRouterSettings(std::forward<MediaConnectRouterSettingsT>(value));
192 return *this;
193 }
194 template <typename MediaConnectRouterSettingsT = MediaConnectRouterOutputDestinationSettings>
195 OutputDestination& AddMediaConnectRouterSettings(MediaConnectRouterSettingsT&& value) {
196 m_mediaConnectRouterSettingsHasBeenSet = true;
197 m_mediaConnectRouterSettings.emplace_back(std::forward<MediaConnectRouterSettingsT>(value));
198 return *this;
199 }
201 private:
202 Aws::String m_id;
203
205
207
209
211
212 Aws::Vector<Aws::String> m_logicalInterfaceNames;
213
215 bool m_idHasBeenSet = false;
216 bool m_mediaPackageSettingsHasBeenSet = false;
217 bool m_multiplexSettingsHasBeenSet = false;
218 bool m_settingsHasBeenSet = false;
219 bool m_srtSettingsHasBeenSet = false;
220 bool m_logicalInterfaceNamesHasBeenSet = false;
221 bool m_mediaConnectRouterSettingsHasBeenSet = false;
222};
223
224} // namespace Model
225} // namespace MediaLive
226} // namespace Aws
OutputDestination & WithMultiplexSettings(MultiplexSettingsT &&value)
void SetMultiplexSettings(MultiplexSettingsT &&value)
OutputDestination & WithMediaPackageSettings(MediaPackageSettingsT &&value)
OutputDestination & WithSettings(SettingsT &&value)
void SetLogicalInterfaceNames(LogicalInterfaceNamesT &&value)
OutputDestination & WithSrtSettings(SrtSettingsT &&value)
void SetMediaPackageSettings(MediaPackageSettingsT &&value)
AWS_MEDIALIVE_API OutputDestination & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< OutputDestinationSettings > & GetSettings() const
OutputDestination & WithId(IdT &&value)
const Aws::Vector< MediaConnectRouterOutputDestinationSettings > & GetMediaConnectRouterSettings() const
OutputDestination & AddSettings(SettingsT &&value)
OutputDestination & AddSrtSettings(SrtSettingsT &&value)
const Aws::Vector< SrtOutputDestinationSettings > & GetSrtSettings() const
AWS_MEDIALIVE_API OutputDestination()=default
const MultiplexProgramChannelDestinationSettings & GetMultiplexSettings() const
void SetMediaConnectRouterSettings(MediaConnectRouterSettingsT &&value)
const Aws::Vector< MediaPackageOutputDestinationSettings > & GetMediaPackageSettings() const
OutputDestination & WithMediaConnectRouterSettings(MediaConnectRouterSettingsT &&value)
AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< Aws::String > & GetLogicalInterfaceNames() const
OutputDestination & WithLogicalInterfaceNames(LogicalInterfaceNamesT &&value)
AWS_MEDIALIVE_API OutputDestination(Aws::Utils::Json::JsonView jsonValue)
OutputDestination & AddMediaPackageSettings(MediaPackageSettingsT &&value)
OutputDestination & AddLogicalInterfaceNames(LogicalInterfaceNamesT &&value)
OutputDestination & AddMediaConnectRouterSettings(MediaConnectRouterSettingsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue