AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
SrtOutputSettings.h
1
6#pragma once
7#include <aws/medialive/MediaLive_EXPORTS.h>
8#include <aws/medialive/model/OutputLocationRef.h>
9#include <aws/medialive/model/SrtEncryptionType.h>
10#include <aws/medialive/model/UdpContainerSettings.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace MediaLive {
22namespace Model {
23
30 public:
31 AWS_MEDIALIVE_API SrtOutputSettings() = default;
32 AWS_MEDIALIVE_API SrtOutputSettings(Aws::Utils::Json::JsonView jsonValue);
34 AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
43 inline int GetBufferMsec() const { return m_bufferMsec; }
44 inline bool BufferMsecHasBeenSet() const { return m_bufferMsecHasBeenSet; }
45 inline void SetBufferMsec(int value) {
46 m_bufferMsecHasBeenSet = true;
47 m_bufferMsec = value;
48 }
49 inline SrtOutputSettings& WithBufferMsec(int value) {
50 SetBufferMsec(value);
51 return *this;
52 }
54
56
57 inline const UdpContainerSettings& GetContainerSettings() const { return m_containerSettings; }
58 inline bool ContainerSettingsHasBeenSet() const { return m_containerSettingsHasBeenSet; }
59 template <typename ContainerSettingsT = UdpContainerSettings>
60 void SetContainerSettings(ContainerSettingsT&& value) {
61 m_containerSettingsHasBeenSet = true;
62 m_containerSettings = std::forward<ContainerSettingsT>(value);
63 }
64 template <typename ContainerSettingsT = UdpContainerSettings>
65 SrtOutputSettings& WithContainerSettings(ContainerSettingsT&& value) {
66 SetContainerSettings(std::forward<ContainerSettingsT>(value));
67 return *this;
68 }
70
72
73 inline const OutputLocationRef& GetDestination() const { return m_destination; }
74 inline bool DestinationHasBeenSet() const { return m_destinationHasBeenSet; }
75 template <typename DestinationT = OutputLocationRef>
76 void SetDestination(DestinationT&& value) {
77 m_destinationHasBeenSet = true;
78 m_destination = std::forward<DestinationT>(value);
79 }
80 template <typename DestinationT = OutputLocationRef>
81 SrtOutputSettings& WithDestination(DestinationT&& value) {
82 SetDestination(std::forward<DestinationT>(value));
83 return *this;
84 }
86
88
93 inline SrtEncryptionType GetEncryptionType() const { return m_encryptionType; }
94 inline bool EncryptionTypeHasBeenSet() const { return m_encryptionTypeHasBeenSet; }
96 m_encryptionTypeHasBeenSet = true;
97 m_encryptionType = value;
98 }
100 SetEncryptionType(value);
101 return *this;
102 }
104
106
115 inline int GetLatency() const { return m_latency; }
116 inline bool LatencyHasBeenSet() const { return m_latencyHasBeenSet; }
117 inline void SetLatency(int value) {
118 m_latencyHasBeenSet = true;
119 m_latency = value;
120 }
121 inline SrtOutputSettings& WithLatency(int value) {
122 SetLatency(value);
123 return *this;
124 }
126 private:
127 int m_bufferMsec{0};
128
129 UdpContainerSettings m_containerSettings;
130
131 OutputLocationRef m_destination;
132
134
135 int m_latency{0};
136 bool m_bufferMsecHasBeenSet = false;
137 bool m_containerSettingsHasBeenSet = false;
138 bool m_destinationHasBeenSet = false;
139 bool m_encryptionTypeHasBeenSet = false;
140 bool m_latencyHasBeenSet = false;
141};
142
143} // namespace Model
144} // namespace MediaLive
145} // namespace Aws
AWS_MEDIALIVE_API SrtOutputSettings & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetContainerSettings(ContainerSettingsT &&value)
AWS_MEDIALIVE_API SrtOutputSettings(Aws::Utils::Json::JsonView jsonValue)
AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const
SrtOutputSettings & WithLatency(int value)
SrtOutputSettings & WithEncryptionType(SrtEncryptionType value)
const OutputLocationRef & GetDestination() const
AWS_MEDIALIVE_API SrtOutputSettings()=default
const UdpContainerSettings & GetContainerSettings() const
void SetDestination(DestinationT &&value)
SrtEncryptionType GetEncryptionType() const
void SetEncryptionType(SrtEncryptionType value)
SrtOutputSettings & WithDestination(DestinationT &&value)
SrtOutputSettings & WithBufferMsec(int value)
SrtOutputSettings & WithContainerSettings(ContainerSettingsT &&value)
Aws::Utils::Json::JsonValue JsonValue