1 #ifndef ANDROID_AUDIO_POLICY_CAPENGINE_CONFIGURATION_ENUMS_H 2 #define ANDROID_AUDIO_POLICY_CAPENGINE_CONFIGURATION_ENUMS_H 3 4 #include <array> 5 #include <string> 6 7 #include <xsdc/XsdcSupport.h> 8 9 namespace android { 10 namespace audio { 11 namespace policy { 12 namespace capengine { 13 namespace configuration { 14 enum class ParameterNameEnumType { 15 UNKNOWN = -1, 16 volume_profile, 17 communication, 18 ambient, 19 builtin_mic, 20 bluetooth_sco_headset, 21 wired_headset, 22 hdmi, 23 telephony_rx, 24 back_mic, 25 remote_submix, 26 anlg_dock_headset, 27 dgtl_dock_headset, 28 usb_accessory, 29 usb_device, 30 fm_tuner, 31 tv_tuner, 32 line, 33 spdif, 34 bluetooth_a2dp, 35 loopback, 36 ip, 37 bus, 38 proxy, 39 usb_headset, 40 bluetooth_ble, 41 hdmi_arc, 42 echo_reference, 43 ble_headset, 44 stub, 45 hdmi_earc, 46 device_address, 47 earpiece, 48 speaker, 49 wired_headphone, 50 bluetooth_sco, 51 bluetooth_sco_carkit, 52 bluetooth_a2dp_headphones, 53 bluetooth_a2dp_speaker, 54 telephony_tx, 55 fm, 56 aux_line, 57 speaker_safe, 58 hearing_aid, 59 echo_canceller, 60 ble_speaker, 61 ble_broadcast, 62 }; 63 ParameterNameEnumType stringToParameterNameEnumType(const std::string& value); 64 std::string toString(ParameterNameEnumType o); 65 66 enum class LangEnum { 67 UNKNOWN = -1, 68 EMPTY, 69 }; 70 LangEnum stringToLangEnum(const std::string& value); 71 std::string toString(LangEnum o); 72 73 enum class SpaceEnum { 74 UNKNOWN = -1, 75 _default, 76 preserve, 77 }; 78 SpaceEnum stringToSpaceEnum(const std::string& value); 79 std::string toString(SpaceEnum o); 80 81 enum class MatchesWhenEnum { 82 UNKNOWN = -1, 83 Is, 84 IsNot, 85 Includes, 86 Excludes, 87 }; 88 MatchesWhenEnum stringToMatchesWhenEnum(const std::string& value); 89 std::string toString(MatchesWhenEnum o); 90 91 enum class TypeEnum { 92 UNKNOWN = -1, 93 Any, 94 All, 95 }; 96 TypeEnum stringToTypeEnum(const std::string& value); 97 std::string toString(TypeEnum o); 98 99 } // configuration 100 } // capengine 101 } // policy 102 } // audio 103 } // android 104 105 // 106 // global type declarations for package 107 // 108 109 namespace android { 110 namespace details { 111 template<> inline constexpr std::array<::android::audio::policy::capengine::configuration::ParameterNameEnumType, 46> xsdc_enum_values<::android::audio::policy::capengine::configuration::ParameterNameEnumType> = { 112 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::volume_profile, 113 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::communication, 114 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::ambient, 115 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::builtin_mic, 116 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::bluetooth_sco_headset, 117 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::wired_headset, 118 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::hdmi, 119 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::telephony_rx, 120 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::back_mic, 121 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::remote_submix, 122 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::anlg_dock_headset, 123 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::dgtl_dock_headset, 124 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::usb_accessory, 125 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::usb_device, 126 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::fm_tuner, 127 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::tv_tuner, 128 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::line, 129 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::spdif, 130 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::bluetooth_a2dp, 131 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::loopback, 132 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::ip, 133 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::bus, 134 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::proxy, 135 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::usb_headset, 136 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::bluetooth_ble, 137 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::hdmi_arc, 138 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::echo_reference, 139 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::ble_headset, 140 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::stub, 141 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::hdmi_earc, 142 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::device_address, 143 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::earpiece, 144 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::speaker, 145 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::wired_headphone, 146 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::bluetooth_sco, 147 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::bluetooth_sco_carkit, 148 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::bluetooth_a2dp_headphones, 149 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::bluetooth_a2dp_speaker, 150 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::telephony_tx, 151 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::fm, 152 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::aux_line, 153 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::speaker_safe, 154 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::hearing_aid, 155 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::echo_canceller, 156 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::ble_speaker, 157 ::android::audio::policy::capengine::configuration::ParameterNameEnumType::ble_broadcast, 158 }; 159 template<> inline constexpr std::array<::android::audio::policy::capengine::configuration::LangEnum, 1> xsdc_enum_values<::android::audio::policy::capengine::configuration::LangEnum> = { 160 ::android::audio::policy::capengine::configuration::LangEnum::EMPTY, 161 }; 162 template<> inline constexpr std::array<::android::audio::policy::capengine::configuration::SpaceEnum, 2> xsdc_enum_values<::android::audio::policy::capengine::configuration::SpaceEnum> = { 163 ::android::audio::policy::capengine::configuration::SpaceEnum::_default, 164 ::android::audio::policy::capengine::configuration::SpaceEnum::preserve, 165 }; 166 template<> inline constexpr std::array<::android::audio::policy::capengine::configuration::MatchesWhenEnum, 4> xsdc_enum_values<::android::audio::policy::capengine::configuration::MatchesWhenEnum> = { 167 ::android::audio::policy::capengine::configuration::MatchesWhenEnum::Is, 168 ::android::audio::policy::capengine::configuration::MatchesWhenEnum::IsNot, 169 ::android::audio::policy::capengine::configuration::MatchesWhenEnum::Includes, 170 ::android::audio::policy::capengine::configuration::MatchesWhenEnum::Excludes, 171 }; 172 template<> inline constexpr std::array<::android::audio::policy::capengine::configuration::TypeEnum, 2> xsdc_enum_values<::android::audio::policy::capengine::configuration::TypeEnum> = { 173 ::android::audio::policy::capengine::configuration::TypeEnum::Any, 174 ::android::audio::policy::capengine::configuration::TypeEnum::All, 175 }; 176 } // namespace details 177 } // namespace android 178 179 #endif // ANDROID_AUDIO_POLICY_CAPENGINE_CONFIGURATION_ENUMS_H 180