AWS SDK for C++

AWS SDK for C++ Version 1.11.889

Loading...
Searching...
No Matches
MultiviewConfiguration.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/mediapackagev2/Mediapackagev2_EXPORTS.h>
10#include <aws/mediapackagev2/model/MultiviewLayoutType.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace mediapackagev2 {
22namespace Model {
23
34 public:
35 AWS_MEDIAPACKAGEV2_API MultiviewConfiguration() = default;
36 AWS_MEDIAPACKAGEV2_API MultiviewConfiguration(Aws::Utils::Json::JsonView jsonValue);
38 AWS_MEDIAPACKAGEV2_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
47 inline const Aws::Vector<Aws::String>& GetAvailableSources() const { return m_availableSources; }
48 inline bool AvailableSourcesHasBeenSet() const { return m_availableSourcesHasBeenSet; }
49 template <typename AvailableSourcesT = Aws::Vector<Aws::String>>
50 void SetAvailableSources(AvailableSourcesT&& value) {
51 m_availableSourcesHasBeenSet = true;
52 m_availableSources = std::forward<AvailableSourcesT>(value);
53 }
54 template <typename AvailableSourcesT = Aws::Vector<Aws::String>>
55 MultiviewConfiguration& WithAvailableSources(AvailableSourcesT&& value) {
56 SetAvailableSources(std::forward<AvailableSourcesT>(value));
57 return *this;
58 }
59 template <typename AvailableSourcesT = Aws::String>
60 MultiviewConfiguration& AddAvailableSources(AvailableSourcesT&& value) {
61 m_availableSourcesHasBeenSet = true;
62 m_availableSources.emplace_back(std::forward<AvailableSourcesT>(value));
63 return *this;
64 }
66
68
73 inline const Aws::Vector<MultiviewLayoutType>& GetAvailableLayouts() const { return m_availableLayouts; }
74 inline bool AvailableLayoutsHasBeenSet() const { return m_availableLayoutsHasBeenSet; }
75 template <typename AvailableLayoutsT = Aws::Vector<MultiviewLayoutType>>
76 void SetAvailableLayouts(AvailableLayoutsT&& value) {
77 m_availableLayoutsHasBeenSet = true;
78 m_availableLayouts = std::forward<AvailableLayoutsT>(value);
79 }
80 template <typename AvailableLayoutsT = Aws::Vector<MultiviewLayoutType>>
81 MultiviewConfiguration& WithAvailableLayouts(AvailableLayoutsT&& value) {
82 SetAvailableLayouts(std::forward<AvailableLayoutsT>(value));
83 return *this;
84 }
86 m_availableLayoutsHasBeenSet = true;
87 m_availableLayouts.push_back(value);
88 return *this;
89 }
91 private:
92 Aws::Vector<Aws::String> m_availableSources;
93
94 Aws::Vector<MultiviewLayoutType> m_availableLayouts;
95 bool m_availableSourcesHasBeenSet = false;
96 bool m_availableLayoutsHasBeenSet = false;
97};
98
99} // namespace Model
100} // namespace mediapackagev2
101} // namespace Aws
const Aws::Vector< Aws::String > & GetAvailableSources() const
MultiviewConfiguration & AddAvailableLayouts(MultiviewLayoutType value)
AWS_MEDIAPACKAGEV2_API MultiviewConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_MEDIAPACKAGEV2_API MultiviewConfiguration()=default
MultiviewConfiguration & AddAvailableSources(AvailableSourcesT &&value)
AWS_MEDIAPACKAGEV2_API Aws::Utils::Json::JsonValue Jsonize() const
MultiviewConfiguration & WithAvailableLayouts(AvailableLayoutsT &&value)
AWS_MEDIAPACKAGEV2_API MultiviewConfiguration(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< MultiviewLayoutType > & GetAvailableLayouts() const
MultiviewConfiguration & WithAvailableSources(AvailableSourcesT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue