AWS SDK for C++

AWS SDK for C++ Version 1.11.867

Loading...
Searching...
No Matches
Container.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/mediaconvert/MediaConvert_EXPORTS.h>
10#include <aws/mediaconvert/model/Format.h>
11#include <aws/mediaconvert/model/Track.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace MediaConvert {
23namespace Model {
24
32class Container {
33 public:
34 AWS_MEDIACONVERT_API Container() = default;
35 AWS_MEDIACONVERT_API Container(Aws::Utils::Json::JsonView jsonValue);
36 AWS_MEDIACONVERT_API Container& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_MEDIACONVERT_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
45 inline long long GetBitRate() const { return m_bitRate; }
46 inline bool BitRateHasBeenSet() const { return m_bitRateHasBeenSet; }
47 inline void SetBitRate(long long value) {
48 m_bitRateHasBeenSet = true;
49 m_bitRate = value;
50 }
51 inline Container& WithBitRate(long long value) {
52 SetBitRate(value);
53 return *this;
54 }
56
58
61 inline double GetDuration() const { return m_duration; }
62 inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; }
63 inline void SetDuration(double value) {
64 m_durationHasBeenSet = true;
65 m_duration = value;
66 }
67 inline Container& WithDuration(double value) {
68 SetDuration(value);
69 return *this;
70 }
72
74
80 inline Format GetFormat() const { return m_format; }
81 inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; }
82 inline void SetFormat(Format value) {
83 m_formatHasBeenSet = true;
84 m_format = value;
85 }
86 inline Container& WithFormat(Format value) {
87 SetFormat(value);
88 return *this;
89 }
91
93
98 inline const Aws::String& GetStartTimecode() const { return m_startTimecode; }
99 inline bool StartTimecodeHasBeenSet() const { return m_startTimecodeHasBeenSet; }
100 template <typename StartTimecodeT = Aws::String>
101 void SetStartTimecode(StartTimecodeT&& value) {
102 m_startTimecodeHasBeenSet = true;
103 m_startTimecode = std::forward<StartTimecodeT>(value);
104 }
105 template <typename StartTimecodeT = Aws::String>
106 Container& WithStartTimecode(StartTimecodeT&& value) {
107 SetStartTimecode(std::forward<StartTimecodeT>(value));
108 return *this;
109 }
111
113
116 inline const Aws::Vector<Track>& GetTracks() const { return m_tracks; }
117 inline bool TracksHasBeenSet() const { return m_tracksHasBeenSet; }
118 template <typename TracksT = Aws::Vector<Track>>
119 void SetTracks(TracksT&& value) {
120 m_tracksHasBeenSet = true;
121 m_tracks = std::forward<TracksT>(value);
122 }
123 template <typename TracksT = Aws::Vector<Track>>
124 Container& WithTracks(TracksT&& value) {
125 SetTracks(std::forward<TracksT>(value));
126 return *this;
127 }
128 template <typename TracksT = Track>
129 Container& AddTracks(TracksT&& value) {
130 m_tracksHasBeenSet = true;
131 m_tracks.emplace_back(std::forward<TracksT>(value));
132 return *this;
133 }
135 private:
136 long long m_bitRate{0};
137
138 double m_duration{0.0};
139
140 Format m_format{Format::NOT_SET};
141
142 Aws::String m_startTimecode;
143
144 Aws::Vector<Track> m_tracks;
145 bool m_bitRateHasBeenSet = false;
146 bool m_durationHasBeenSet = false;
147 bool m_formatHasBeenSet = false;
148 bool m_startTimecodeHasBeenSet = false;
149 bool m_tracksHasBeenSet = false;
150};
151
152} // namespace Model
153} // namespace MediaConvert
154} // namespace Aws
Container & WithBitRate(long long value)
Definition Container.h:51
const Aws::Vector< Track > & GetTracks() const
Definition Container.h:116
Container & WithFormat(Format value)
Definition Container.h:86
void SetStartTimecode(StartTimecodeT &&value)
Definition Container.h:101
void SetTracks(TracksT &&value)
Definition Container.h:119
const Aws::String & GetStartTimecode() const
Definition Container.h:98
void SetBitRate(long long value)
Definition Container.h:47
AWS_MEDIACONVERT_API Container()=default
AWS_MEDIACONVERT_API Container & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_MEDIACONVERT_API Container(Aws::Utils::Json::JsonView jsonValue)
Container & WithDuration(double value)
Definition Container.h:67
Container & WithTracks(TracksT &&value)
Definition Container.h:124
Container & AddTracks(TracksT &&value)
Definition Container.h:129
AWS_MEDIACONVERT_API Aws::Utils::Json::JsonValue Jsonize() const
Container & WithStartTimecode(StartTimecodeT &&value)
Definition Container.h:106
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue