1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/medialive/MediaLive_EXPORTS.h> 8 #include <aws/medialive/model/AudioOnlyHlsSettings.h> 9 #include <aws/medialive/model/Fmp4HlsSettings.h> 10 #include <aws/medialive/model/FrameCaptureHlsSettings.h> 11 #include <aws/medialive/model/StandardHlsSettings.h> 12 #include <utility> 13 14 namespace Aws 15 { 16 namespace Utils 17 { 18 namespace Json 19 { 20 class JsonValue; 21 class JsonView; 22 } // namespace Json 23 } // namespace Utils 24 namespace MediaLive 25 { 26 namespace Model 27 { 28 29 /** 30 * Hls Settings<p><h3>See Also:</h3> <a 31 * href="http://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/HlsSettings">AWS 32 * API Reference</a></p> 33 */ 34 class AWS_MEDIALIVE_API HlsSettings 35 { 36 public: 37 HlsSettings(); 38 HlsSettings(Aws::Utils::Json::JsonView jsonValue); 39 HlsSettings& operator=(Aws::Utils::Json::JsonView jsonValue); 40 Aws::Utils::Json::JsonValue Jsonize() const; 41 42 43 GetAudioOnlyHlsSettings()44 inline const AudioOnlyHlsSettings& GetAudioOnlyHlsSettings() const{ return m_audioOnlyHlsSettings; } 45 46 AudioOnlyHlsSettingsHasBeenSet()47 inline bool AudioOnlyHlsSettingsHasBeenSet() const { return m_audioOnlyHlsSettingsHasBeenSet; } 48 49 SetAudioOnlyHlsSettings(const AudioOnlyHlsSettings & value)50 inline void SetAudioOnlyHlsSettings(const AudioOnlyHlsSettings& value) { m_audioOnlyHlsSettingsHasBeenSet = true; m_audioOnlyHlsSettings = value; } 51 52 SetAudioOnlyHlsSettings(AudioOnlyHlsSettings && value)53 inline void SetAudioOnlyHlsSettings(AudioOnlyHlsSettings&& value) { m_audioOnlyHlsSettingsHasBeenSet = true; m_audioOnlyHlsSettings = std::move(value); } 54 55 WithAudioOnlyHlsSettings(const AudioOnlyHlsSettings & value)56 inline HlsSettings& WithAudioOnlyHlsSettings(const AudioOnlyHlsSettings& value) { SetAudioOnlyHlsSettings(value); return *this;} 57 58 WithAudioOnlyHlsSettings(AudioOnlyHlsSettings && value)59 inline HlsSettings& WithAudioOnlyHlsSettings(AudioOnlyHlsSettings&& value) { SetAudioOnlyHlsSettings(std::move(value)); return *this;} 60 61 62 GetFmp4HlsSettings()63 inline const Fmp4HlsSettings& GetFmp4HlsSettings() const{ return m_fmp4HlsSettings; } 64 65 Fmp4HlsSettingsHasBeenSet()66 inline bool Fmp4HlsSettingsHasBeenSet() const { return m_fmp4HlsSettingsHasBeenSet; } 67 68 SetFmp4HlsSettings(const Fmp4HlsSettings & value)69 inline void SetFmp4HlsSettings(const Fmp4HlsSettings& value) { m_fmp4HlsSettingsHasBeenSet = true; m_fmp4HlsSettings = value; } 70 71 SetFmp4HlsSettings(Fmp4HlsSettings && value)72 inline void SetFmp4HlsSettings(Fmp4HlsSettings&& value) { m_fmp4HlsSettingsHasBeenSet = true; m_fmp4HlsSettings = std::move(value); } 73 74 WithFmp4HlsSettings(const Fmp4HlsSettings & value)75 inline HlsSettings& WithFmp4HlsSettings(const Fmp4HlsSettings& value) { SetFmp4HlsSettings(value); return *this;} 76 77 WithFmp4HlsSettings(Fmp4HlsSettings && value)78 inline HlsSettings& WithFmp4HlsSettings(Fmp4HlsSettings&& value) { SetFmp4HlsSettings(std::move(value)); return *this;} 79 80 81 GetFrameCaptureHlsSettings()82 inline const FrameCaptureHlsSettings& GetFrameCaptureHlsSettings() const{ return m_frameCaptureHlsSettings; } 83 84 FrameCaptureHlsSettingsHasBeenSet()85 inline bool FrameCaptureHlsSettingsHasBeenSet() const { return m_frameCaptureHlsSettingsHasBeenSet; } 86 87 SetFrameCaptureHlsSettings(const FrameCaptureHlsSettings & value)88 inline void SetFrameCaptureHlsSettings(const FrameCaptureHlsSettings& value) { m_frameCaptureHlsSettingsHasBeenSet = true; m_frameCaptureHlsSettings = value; } 89 90 SetFrameCaptureHlsSettings(FrameCaptureHlsSettings && value)91 inline void SetFrameCaptureHlsSettings(FrameCaptureHlsSettings&& value) { m_frameCaptureHlsSettingsHasBeenSet = true; m_frameCaptureHlsSettings = std::move(value); } 92 93 WithFrameCaptureHlsSettings(const FrameCaptureHlsSettings & value)94 inline HlsSettings& WithFrameCaptureHlsSettings(const FrameCaptureHlsSettings& value) { SetFrameCaptureHlsSettings(value); return *this;} 95 96 WithFrameCaptureHlsSettings(FrameCaptureHlsSettings && value)97 inline HlsSettings& WithFrameCaptureHlsSettings(FrameCaptureHlsSettings&& value) { SetFrameCaptureHlsSettings(std::move(value)); return *this;} 98 99 100 GetStandardHlsSettings()101 inline const StandardHlsSettings& GetStandardHlsSettings() const{ return m_standardHlsSettings; } 102 103 StandardHlsSettingsHasBeenSet()104 inline bool StandardHlsSettingsHasBeenSet() const { return m_standardHlsSettingsHasBeenSet; } 105 106 SetStandardHlsSettings(const StandardHlsSettings & value)107 inline void SetStandardHlsSettings(const StandardHlsSettings& value) { m_standardHlsSettingsHasBeenSet = true; m_standardHlsSettings = value; } 108 109 SetStandardHlsSettings(StandardHlsSettings && value)110 inline void SetStandardHlsSettings(StandardHlsSettings&& value) { m_standardHlsSettingsHasBeenSet = true; m_standardHlsSettings = std::move(value); } 111 112 WithStandardHlsSettings(const StandardHlsSettings & value)113 inline HlsSettings& WithStandardHlsSettings(const StandardHlsSettings& value) { SetStandardHlsSettings(value); return *this;} 114 115 WithStandardHlsSettings(StandardHlsSettings && value)116 inline HlsSettings& WithStandardHlsSettings(StandardHlsSettings&& value) { SetStandardHlsSettings(std::move(value)); return *this;} 117 118 private: 119 120 AudioOnlyHlsSettings m_audioOnlyHlsSettings; 121 bool m_audioOnlyHlsSettingsHasBeenSet; 122 123 Fmp4HlsSettings m_fmp4HlsSettings; 124 bool m_fmp4HlsSettingsHasBeenSet; 125 126 FrameCaptureHlsSettings m_frameCaptureHlsSettings; 127 bool m_frameCaptureHlsSettingsHasBeenSet; 128 129 StandardHlsSettings m_standardHlsSettings; 130 bool m_standardHlsSettingsHasBeenSet; 131 }; 132 133 } // namespace Model 134 } // namespace MediaLive 135 } // namespace Aws 136