/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace MediaLive { namespace Model { /** * Output settings. There can be multiple outputs within a group.

See * Also:

AWS * API Reference

*/ class Output { public: AWS_MEDIALIVE_API Output(); AWS_MEDIALIVE_API Output(Aws::Utils::Json::JsonView jsonValue); AWS_MEDIALIVE_API Output& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const; /** * The names of the AudioDescriptions used as audio sources for this output. */ inline const Aws::Vector& GetAudioDescriptionNames() const{ return m_audioDescriptionNames; } /** * The names of the AudioDescriptions used as audio sources for this output. */ inline bool AudioDescriptionNamesHasBeenSet() const { return m_audioDescriptionNamesHasBeenSet; } /** * The names of the AudioDescriptions used as audio sources for this output. */ inline void SetAudioDescriptionNames(const Aws::Vector& value) { m_audioDescriptionNamesHasBeenSet = true; m_audioDescriptionNames = value; } /** * The names of the AudioDescriptions used as audio sources for this output. */ inline void SetAudioDescriptionNames(Aws::Vector&& value) { m_audioDescriptionNamesHasBeenSet = true; m_audioDescriptionNames = std::move(value); } /** * The names of the AudioDescriptions used as audio sources for this output. */ inline Output& WithAudioDescriptionNames(const Aws::Vector& value) { SetAudioDescriptionNames(value); return *this;} /** * The names of the AudioDescriptions used as audio sources for this output. */ inline Output& WithAudioDescriptionNames(Aws::Vector&& value) { SetAudioDescriptionNames(std::move(value)); return *this;} /** * The names of the AudioDescriptions used as audio sources for this output. */ inline Output& AddAudioDescriptionNames(const Aws::String& value) { m_audioDescriptionNamesHasBeenSet = true; m_audioDescriptionNames.push_back(value); return *this; } /** * The names of the AudioDescriptions used as audio sources for this output. */ inline Output& AddAudioDescriptionNames(Aws::String&& value) { m_audioDescriptionNamesHasBeenSet = true; m_audioDescriptionNames.push_back(std::move(value)); return *this; } /** * The names of the AudioDescriptions used as audio sources for this output. */ inline Output& AddAudioDescriptionNames(const char* value) { m_audioDescriptionNamesHasBeenSet = true; m_audioDescriptionNames.push_back(value); return *this; } /** * The names of the CaptionDescriptions used as caption sources for this output. */ inline const Aws::Vector& GetCaptionDescriptionNames() const{ return m_captionDescriptionNames; } /** * The names of the CaptionDescriptions used as caption sources for this output. */ inline bool CaptionDescriptionNamesHasBeenSet() const { return m_captionDescriptionNamesHasBeenSet; } /** * The names of the CaptionDescriptions used as caption sources for this output. */ inline void SetCaptionDescriptionNames(const Aws::Vector& value) { m_captionDescriptionNamesHasBeenSet = true; m_captionDescriptionNames = value; } /** * The names of the CaptionDescriptions used as caption sources for this output. */ inline void SetCaptionDescriptionNames(Aws::Vector&& value) { m_captionDescriptionNamesHasBeenSet = true; m_captionDescriptionNames = std::move(value); } /** * The names of the CaptionDescriptions used as caption sources for this output. */ inline Output& WithCaptionDescriptionNames(const Aws::Vector& value) { SetCaptionDescriptionNames(value); return *this;} /** * The names of the CaptionDescriptions used as caption sources for this output. */ inline Output& WithCaptionDescriptionNames(Aws::Vector&& value) { SetCaptionDescriptionNames(std::move(value)); return *this;} /** * The names of the CaptionDescriptions used as caption sources for this output. */ inline Output& AddCaptionDescriptionNames(const Aws::String& value) { m_captionDescriptionNamesHasBeenSet = true; m_captionDescriptionNames.push_back(value); return *this; } /** * The names of the CaptionDescriptions used as caption sources for this output. */ inline Output& AddCaptionDescriptionNames(Aws::String&& value) { m_captionDescriptionNamesHasBeenSet = true; m_captionDescriptionNames.push_back(std::move(value)); return *this; } /** * The names of the CaptionDescriptions used as caption sources for this output. */ inline Output& AddCaptionDescriptionNames(const char* value) { m_captionDescriptionNamesHasBeenSet = true; m_captionDescriptionNames.push_back(value); return *this; } /** * The name used to identify an output. */ inline const Aws::String& GetOutputName() const{ return m_outputName; } /** * The name used to identify an output. */ inline bool OutputNameHasBeenSet() const { return m_outputNameHasBeenSet; } /** * The name used to identify an output. */ inline void SetOutputName(const Aws::String& value) { m_outputNameHasBeenSet = true; m_outputName = value; } /** * The name used to identify an output. */ inline void SetOutputName(Aws::String&& value) { m_outputNameHasBeenSet = true; m_outputName = std::move(value); } /** * The name used to identify an output. */ inline void SetOutputName(const char* value) { m_outputNameHasBeenSet = true; m_outputName.assign(value); } /** * The name used to identify an output. */ inline Output& WithOutputName(const Aws::String& value) { SetOutputName(value); return *this;} /** * The name used to identify an output. */ inline Output& WithOutputName(Aws::String&& value) { SetOutputName(std::move(value)); return *this;} /** * The name used to identify an output. */ inline Output& WithOutputName(const char* value) { SetOutputName(value); return *this;} /** * Output type-specific settings. */ inline const OutputSettings& GetOutputSettings() const{ return m_outputSettings; } /** * Output type-specific settings. */ inline bool OutputSettingsHasBeenSet() const { return m_outputSettingsHasBeenSet; } /** * Output type-specific settings. */ inline void SetOutputSettings(const OutputSettings& value) { m_outputSettingsHasBeenSet = true; m_outputSettings = value; } /** * Output type-specific settings. */ inline void SetOutputSettings(OutputSettings&& value) { m_outputSettingsHasBeenSet = true; m_outputSettings = std::move(value); } /** * Output type-specific settings. */ inline Output& WithOutputSettings(const OutputSettings& value) { SetOutputSettings(value); return *this;} /** * Output type-specific settings. */ inline Output& WithOutputSettings(OutputSettings&& value) { SetOutputSettings(std::move(value)); return *this;} /** * The name of the VideoDescription used as the source for this output. */ inline const Aws::String& GetVideoDescriptionName() const{ return m_videoDescriptionName; } /** * The name of the VideoDescription used as the source for this output. */ inline bool VideoDescriptionNameHasBeenSet() const { return m_videoDescriptionNameHasBeenSet; } /** * The name of the VideoDescription used as the source for this output. */ inline void SetVideoDescriptionName(const Aws::String& value) { m_videoDescriptionNameHasBeenSet = true; m_videoDescriptionName = value; } /** * The name of the VideoDescription used as the source for this output. */ inline void SetVideoDescriptionName(Aws::String&& value) { m_videoDescriptionNameHasBeenSet = true; m_videoDescriptionName = std::move(value); } /** * The name of the VideoDescription used as the source for this output. */ inline void SetVideoDescriptionName(const char* value) { m_videoDescriptionNameHasBeenSet = true; m_videoDescriptionName.assign(value); } /** * The name of the VideoDescription used as the source for this output. */ inline Output& WithVideoDescriptionName(const Aws::String& value) { SetVideoDescriptionName(value); return *this;} /** * The name of the VideoDescription used as the source for this output. */ inline Output& WithVideoDescriptionName(Aws::String&& value) { SetVideoDescriptionName(std::move(value)); return *this;} /** * The name of the VideoDescription used as the source for this output. */ inline Output& WithVideoDescriptionName(const char* value) { SetVideoDescriptionName(value); return *this;} private: Aws::Vector m_audioDescriptionNames; bool m_audioDescriptionNamesHasBeenSet = false; Aws::Vector m_captionDescriptionNames; bool m_captionDescriptionNamesHasBeenSet = false; Aws::String m_outputName; bool m_outputNameHasBeenSet = false; OutputSettings m_outputSettings; bool m_outputSettingsHasBeenSet = false; Aws::String m_videoDescriptionName; bool m_videoDescriptionNameHasBeenSet = false; }; } // namespace Model } // namespace MediaLive } // namespace Aws