AWS SDK for C++

AWS SDK for C++ Version 1.11.742

Loading...
Searching...
No Matches
OutputGroup.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/Output.h>
11#include <aws/medialive/model/OutputGroupSettings.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace MediaLive {
23namespace Model {
24
32 public:
33 AWS_MEDIALIVE_API OutputGroup() = default;
34 AWS_MEDIALIVE_API OutputGroup(Aws::Utils::Json::JsonView jsonValue);
35 AWS_MEDIALIVE_API OutputGroup& operator=(Aws::Utils::Json::JsonView jsonValue);
36 AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline const Aws::String& GetName() const { return m_name; }
43 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
44 template <typename NameT = Aws::String>
45 void SetName(NameT&& value) {
46 m_nameHasBeenSet = true;
47 m_name = std::forward<NameT>(value);
48 }
49 template <typename NameT = Aws::String>
50 OutputGroup& WithName(NameT&& value) {
51 SetName(std::forward<NameT>(value));
52 return *this;
53 }
55
57
60 inline const OutputGroupSettings& GetOutputGroupSettings() const { return m_outputGroupSettings; }
61 inline bool OutputGroupSettingsHasBeenSet() const { return m_outputGroupSettingsHasBeenSet; }
62 template <typename OutputGroupSettingsT = OutputGroupSettings>
63 void SetOutputGroupSettings(OutputGroupSettingsT&& value) {
64 m_outputGroupSettingsHasBeenSet = true;
65 m_outputGroupSettings = std::forward<OutputGroupSettingsT>(value);
66 }
67 template <typename OutputGroupSettingsT = OutputGroupSettings>
68 OutputGroup& WithOutputGroupSettings(OutputGroupSettingsT&& value) {
69 SetOutputGroupSettings(std::forward<OutputGroupSettingsT>(value));
70 return *this;
71 }
73
75
76 inline const Aws::Vector<Output>& GetOutputs() const { return m_outputs; }
77 inline bool OutputsHasBeenSet() const { return m_outputsHasBeenSet; }
78 template <typename OutputsT = Aws::Vector<Output>>
79 void SetOutputs(OutputsT&& value) {
80 m_outputsHasBeenSet = true;
81 m_outputs = std::forward<OutputsT>(value);
82 }
83 template <typename OutputsT = Aws::Vector<Output>>
84 OutputGroup& WithOutputs(OutputsT&& value) {
85 SetOutputs(std::forward<OutputsT>(value));
86 return *this;
87 }
88 template <typename OutputsT = Output>
89 OutputGroup& AddOutputs(OutputsT&& value) {
90 m_outputsHasBeenSet = true;
91 m_outputs.emplace_back(std::forward<OutputsT>(value));
92 return *this;
93 }
95 private:
96 Aws::String m_name;
97
98 OutputGroupSettings m_outputGroupSettings;
99
100 Aws::Vector<Output> m_outputs;
101 bool m_nameHasBeenSet = false;
102 bool m_outputGroupSettingsHasBeenSet = false;
103 bool m_outputsHasBeenSet = false;
104};
105
106} // namespace Model
107} // namespace MediaLive
108} // namespace Aws
OutputGroup & WithName(NameT &&value)
Definition OutputGroup.h:50
AWS_MEDIALIVE_API OutputGroup()=default
AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_MEDIALIVE_API OutputGroup & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetOutputs(OutputsT &&value)
Definition OutputGroup.h:79
const Aws::String & GetName() const
Definition OutputGroup.h:42
const OutputGroupSettings & GetOutputGroupSettings() const
Definition OutputGroup.h:60
OutputGroup & WithOutputs(OutputsT &&value)
Definition OutputGroup.h:84
void SetOutputGroupSettings(OutputGroupSettingsT &&value)
Definition OutputGroup.h:63
const Aws::Vector< Output > & GetOutputs() const
Definition OutputGroup.h:76
OutputGroup & AddOutputs(OutputsT &&value)
Definition OutputGroup.h:89
AWS_MEDIALIVE_API OutputGroup(Aws::Utils::Json::JsonView jsonValue)
OutputGroup & WithOutputGroupSettings(OutputGroupSettingsT &&value)
Definition OutputGroup.h:68
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue