1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #include <aws/mediaconvert/model/Eac3AtmosMeteringMode.h> 7 #include <aws/core/utils/HashingUtils.h> 8 #include <aws/core/Globals.h> 9 #include <aws/core/utils/EnumParseOverflowContainer.h> 10 11 using namespace Aws::Utils; 12 13 14 namespace Aws 15 { 16 namespace MediaConvert 17 { 18 namespace Model 19 { 20 namespace Eac3AtmosMeteringModeMapper 21 { 22 23 static const int LEQ_A_HASH = HashingUtils::HashString("LEQ_A"); 24 static const int ITU_BS_1770_1_HASH = HashingUtils::HashString("ITU_BS_1770_1"); 25 static const int ITU_BS_1770_2_HASH = HashingUtils::HashString("ITU_BS_1770_2"); 26 static const int ITU_BS_1770_3_HASH = HashingUtils::HashString("ITU_BS_1770_3"); 27 static const int ITU_BS_1770_4_HASH = HashingUtils::HashString("ITU_BS_1770_4"); 28 29 GetEac3AtmosMeteringModeForName(const Aws::String & name)30 Eac3AtmosMeteringMode GetEac3AtmosMeteringModeForName(const Aws::String& name) 31 { 32 int hashCode = HashingUtils::HashString(name.c_str()); 33 if (hashCode == LEQ_A_HASH) 34 { 35 return Eac3AtmosMeteringMode::LEQ_A; 36 } 37 else if (hashCode == ITU_BS_1770_1_HASH) 38 { 39 return Eac3AtmosMeteringMode::ITU_BS_1770_1; 40 } 41 else if (hashCode == ITU_BS_1770_2_HASH) 42 { 43 return Eac3AtmosMeteringMode::ITU_BS_1770_2; 44 } 45 else if (hashCode == ITU_BS_1770_3_HASH) 46 { 47 return Eac3AtmosMeteringMode::ITU_BS_1770_3; 48 } 49 else if (hashCode == ITU_BS_1770_4_HASH) 50 { 51 return Eac3AtmosMeteringMode::ITU_BS_1770_4; 52 } 53 EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); 54 if(overflowContainer) 55 { 56 overflowContainer->StoreOverflow(hashCode, name); 57 return static_cast<Eac3AtmosMeteringMode>(hashCode); 58 } 59 60 return Eac3AtmosMeteringMode::NOT_SET; 61 } 62 GetNameForEac3AtmosMeteringMode(Eac3AtmosMeteringMode enumValue)63 Aws::String GetNameForEac3AtmosMeteringMode(Eac3AtmosMeteringMode enumValue) 64 { 65 switch(enumValue) 66 { 67 case Eac3AtmosMeteringMode::LEQ_A: 68 return "LEQ_A"; 69 case Eac3AtmosMeteringMode::ITU_BS_1770_1: 70 return "ITU_BS_1770_1"; 71 case Eac3AtmosMeteringMode::ITU_BS_1770_2: 72 return "ITU_BS_1770_2"; 73 case Eac3AtmosMeteringMode::ITU_BS_1770_3: 74 return "ITU_BS_1770_3"; 75 case Eac3AtmosMeteringMode::ITU_BS_1770_4: 76 return "ITU_BS_1770_4"; 77 default: 78 EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); 79 if(overflowContainer) 80 { 81 return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue)); 82 } 83 84 return {}; 85 } 86 } 87 88 } // namespace Eac3AtmosMeteringModeMapper 89 } // namespace Model 90 } // namespace MediaConvert 91 } // namespace Aws 92