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/ColorSpacePassthroughSettings.h> 9 #include <aws/medialive/model/Hdr10Settings.h> 10 #include <aws/medialive/model/Rec601Settings.h> 11 #include <aws/medialive/model/Rec709Settings.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 * H265 Color Space Settings<p><h3>See Also:</h3> <a 31 * href="http://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/H265ColorSpaceSettings">AWS 32 * API Reference</a></p> 33 */ 34 class AWS_MEDIALIVE_API H265ColorSpaceSettings 35 { 36 public: 37 H265ColorSpaceSettings(); 38 H265ColorSpaceSettings(Aws::Utils::Json::JsonView jsonValue); 39 H265ColorSpaceSettings& operator=(Aws::Utils::Json::JsonView jsonValue); 40 Aws::Utils::Json::JsonValue Jsonize() const; 41 42 43 GetColorSpacePassthroughSettings()44 inline const ColorSpacePassthroughSettings& GetColorSpacePassthroughSettings() const{ return m_colorSpacePassthroughSettings; } 45 46 ColorSpacePassthroughSettingsHasBeenSet()47 inline bool ColorSpacePassthroughSettingsHasBeenSet() const { return m_colorSpacePassthroughSettingsHasBeenSet; } 48 49 SetColorSpacePassthroughSettings(const ColorSpacePassthroughSettings & value)50 inline void SetColorSpacePassthroughSettings(const ColorSpacePassthroughSettings& value) { m_colorSpacePassthroughSettingsHasBeenSet = true; m_colorSpacePassthroughSettings = value; } 51 52 SetColorSpacePassthroughSettings(ColorSpacePassthroughSettings && value)53 inline void SetColorSpacePassthroughSettings(ColorSpacePassthroughSettings&& value) { m_colorSpacePassthroughSettingsHasBeenSet = true; m_colorSpacePassthroughSettings = std::move(value); } 54 55 WithColorSpacePassthroughSettings(const ColorSpacePassthroughSettings & value)56 inline H265ColorSpaceSettings& WithColorSpacePassthroughSettings(const ColorSpacePassthroughSettings& value) { SetColorSpacePassthroughSettings(value); return *this;} 57 58 WithColorSpacePassthroughSettings(ColorSpacePassthroughSettings && value)59 inline H265ColorSpaceSettings& WithColorSpacePassthroughSettings(ColorSpacePassthroughSettings&& value) { SetColorSpacePassthroughSettings(std::move(value)); return *this;} 60 61 62 GetHdr10Settings()63 inline const Hdr10Settings& GetHdr10Settings() const{ return m_hdr10Settings; } 64 65 Hdr10SettingsHasBeenSet()66 inline bool Hdr10SettingsHasBeenSet() const { return m_hdr10SettingsHasBeenSet; } 67 68 SetHdr10Settings(const Hdr10Settings & value)69 inline void SetHdr10Settings(const Hdr10Settings& value) { m_hdr10SettingsHasBeenSet = true; m_hdr10Settings = value; } 70 71 SetHdr10Settings(Hdr10Settings && value)72 inline void SetHdr10Settings(Hdr10Settings&& value) { m_hdr10SettingsHasBeenSet = true; m_hdr10Settings = std::move(value); } 73 74 WithHdr10Settings(const Hdr10Settings & value)75 inline H265ColorSpaceSettings& WithHdr10Settings(const Hdr10Settings& value) { SetHdr10Settings(value); return *this;} 76 77 WithHdr10Settings(Hdr10Settings && value)78 inline H265ColorSpaceSettings& WithHdr10Settings(Hdr10Settings&& value) { SetHdr10Settings(std::move(value)); return *this;} 79 80 81 GetRec601Settings()82 inline const Rec601Settings& GetRec601Settings() const{ return m_rec601Settings; } 83 84 Rec601SettingsHasBeenSet()85 inline bool Rec601SettingsHasBeenSet() const { return m_rec601SettingsHasBeenSet; } 86 87 SetRec601Settings(const Rec601Settings & value)88 inline void SetRec601Settings(const Rec601Settings& value) { m_rec601SettingsHasBeenSet = true; m_rec601Settings = value; } 89 90 SetRec601Settings(Rec601Settings && value)91 inline void SetRec601Settings(Rec601Settings&& value) { m_rec601SettingsHasBeenSet = true; m_rec601Settings = std::move(value); } 92 93 WithRec601Settings(const Rec601Settings & value)94 inline H265ColorSpaceSettings& WithRec601Settings(const Rec601Settings& value) { SetRec601Settings(value); return *this;} 95 96 WithRec601Settings(Rec601Settings && value)97 inline H265ColorSpaceSettings& WithRec601Settings(Rec601Settings&& value) { SetRec601Settings(std::move(value)); return *this;} 98 99 100 GetRec709Settings()101 inline const Rec709Settings& GetRec709Settings() const{ return m_rec709Settings; } 102 103 Rec709SettingsHasBeenSet()104 inline bool Rec709SettingsHasBeenSet() const { return m_rec709SettingsHasBeenSet; } 105 106 SetRec709Settings(const Rec709Settings & value)107 inline void SetRec709Settings(const Rec709Settings& value) { m_rec709SettingsHasBeenSet = true; m_rec709Settings = value; } 108 109 SetRec709Settings(Rec709Settings && value)110 inline void SetRec709Settings(Rec709Settings&& value) { m_rec709SettingsHasBeenSet = true; m_rec709Settings = std::move(value); } 111 112 WithRec709Settings(const Rec709Settings & value)113 inline H265ColorSpaceSettings& WithRec709Settings(const Rec709Settings& value) { SetRec709Settings(value); return *this;} 114 115 WithRec709Settings(Rec709Settings && value)116 inline H265ColorSpaceSettings& WithRec709Settings(Rec709Settings&& value) { SetRec709Settings(std::move(value)); return *this;} 117 118 private: 119 120 ColorSpacePassthroughSettings m_colorSpacePassthroughSettings; 121 bool m_colorSpacePassthroughSettingsHasBeenSet; 122 123 Hdr10Settings m_hdr10Settings; 124 bool m_hdr10SettingsHasBeenSet; 125 126 Rec601Settings m_rec601Settings; 127 bool m_rec601SettingsHasBeenSet; 128 129 Rec709Settings m_rec709Settings; 130 bool m_rec709SettingsHasBeenSet; 131 }; 132 133 } // namespace Model 134 } // namespace MediaLive 135 } // namespace Aws 136