Loading services/audiopolicy/engine/config/src/EngineConfig.cpp +24 −1 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,7 @@ #include <string> #include <string> #include <string> #include <string> #include <vector> #include <vector> #include <unordered_map> #define LOG_TAG "APM::AudioPolicyEngine/Config" #define LOG_TAG "APM::AudioPolicyEngine/Config" //#define LOG_NDEBUG 0 //#define LOG_NDEBUG 0 Loading Loading @@ -51,6 +52,27 @@ static const char *const gReferenceAttributeName = "name"; namespace { namespace { ConversionResult<std::string> aidl2legacy_AudioHalProductStrategy_ProductStrategyType(int id) { using AudioProductStrategyType = media::audio::common::AudioProductStrategyType; #define STRATEGY_ENTRY(name) {static_cast<int>(AudioProductStrategyType::name), "STRATEGY_" #name} static const std::unordered_map<int, std::string> productStrategyMap = {STRATEGY_ENTRY(MEDIA), STRATEGY_ENTRY(PHONE), STRATEGY_ENTRY(SONIFICATION), STRATEGY_ENTRY(SONIFICATION_RESPECTFUL), STRATEGY_ENTRY(DTMF), STRATEGY_ENTRY(ENFORCED_AUDIBLE), STRATEGY_ENTRY(TRANSMITTED_THROUGH_SPEAKER), STRATEGY_ENTRY(ACCESSIBILITY)}; #undef STRATEGY_ENTRY auto it = productStrategyMap.find(id); if (it == productStrategyMap.end()) { return base::unexpected(BAD_VALUE); } return it->second; } ConversionResult<AttributesGroup> aidl2legacy_AudioHalAttributeGroup_AttributesGroup( ConversionResult<AttributesGroup> aidl2legacy_AudioHalAttributeGroup_AttributesGroup( const media::audio::common::AudioHalAttributesGroup& aidl) { const media::audio::common::AudioHalAttributesGroup& aidl) { AttributesGroup legacy; AttributesGroup legacy; Loading @@ -65,7 +87,8 @@ ConversionResult<AttributesGroup> aidl2legacy_AudioHalAttributeGroup_AttributesG ConversionResult<ProductStrategy> aidl2legacy_AudioHalProductStrategy_ProductStrategy( ConversionResult<ProductStrategy> aidl2legacy_AudioHalProductStrategy_ProductStrategy( const media::audio::common::AudioHalProductStrategy& aidl) { const media::audio::common::AudioHalProductStrategy& aidl) { ProductStrategy legacy; ProductStrategy legacy; legacy.name = "strategy_" + std::to_string(aidl.id); legacy.name = VALUE_OR_RETURN( aidl2legacy_AudioHalProductStrategy_ProductStrategyType(aidl.id)); legacy.attributesGroups = VALUE_OR_RETURN(convertContainer<AttributesGroups>( legacy.attributesGroups = VALUE_OR_RETURN(convertContainer<AttributesGroups>( aidl.attributesGroups, aidl.attributesGroups, aidl2legacy_AudioHalAttributeGroup_AttributesGroup)); aidl2legacy_AudioHalAttributeGroup_AttributesGroup)); Loading Loading
services/audiopolicy/engine/config/src/EngineConfig.cpp +24 −1 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,7 @@ #include <string> #include <string> #include <string> #include <string> #include <vector> #include <vector> #include <unordered_map> #define LOG_TAG "APM::AudioPolicyEngine/Config" #define LOG_TAG "APM::AudioPolicyEngine/Config" //#define LOG_NDEBUG 0 //#define LOG_NDEBUG 0 Loading Loading @@ -51,6 +52,27 @@ static const char *const gReferenceAttributeName = "name"; namespace { namespace { ConversionResult<std::string> aidl2legacy_AudioHalProductStrategy_ProductStrategyType(int id) { using AudioProductStrategyType = media::audio::common::AudioProductStrategyType; #define STRATEGY_ENTRY(name) {static_cast<int>(AudioProductStrategyType::name), "STRATEGY_" #name} static const std::unordered_map<int, std::string> productStrategyMap = {STRATEGY_ENTRY(MEDIA), STRATEGY_ENTRY(PHONE), STRATEGY_ENTRY(SONIFICATION), STRATEGY_ENTRY(SONIFICATION_RESPECTFUL), STRATEGY_ENTRY(DTMF), STRATEGY_ENTRY(ENFORCED_AUDIBLE), STRATEGY_ENTRY(TRANSMITTED_THROUGH_SPEAKER), STRATEGY_ENTRY(ACCESSIBILITY)}; #undef STRATEGY_ENTRY auto it = productStrategyMap.find(id); if (it == productStrategyMap.end()) { return base::unexpected(BAD_VALUE); } return it->second; } ConversionResult<AttributesGroup> aidl2legacy_AudioHalAttributeGroup_AttributesGroup( ConversionResult<AttributesGroup> aidl2legacy_AudioHalAttributeGroup_AttributesGroup( const media::audio::common::AudioHalAttributesGroup& aidl) { const media::audio::common::AudioHalAttributesGroup& aidl) { AttributesGroup legacy; AttributesGroup legacy; Loading @@ -65,7 +87,8 @@ ConversionResult<AttributesGroup> aidl2legacy_AudioHalAttributeGroup_AttributesG ConversionResult<ProductStrategy> aidl2legacy_AudioHalProductStrategy_ProductStrategy( ConversionResult<ProductStrategy> aidl2legacy_AudioHalProductStrategy_ProductStrategy( const media::audio::common::AudioHalProductStrategy& aidl) { const media::audio::common::AudioHalProductStrategy& aidl) { ProductStrategy legacy; ProductStrategy legacy; legacy.name = "strategy_" + std::to_string(aidl.id); legacy.name = VALUE_OR_RETURN( aidl2legacy_AudioHalProductStrategy_ProductStrategyType(aidl.id)); legacy.attributesGroups = VALUE_OR_RETURN(convertContainer<AttributesGroups>( legacy.attributesGroups = VALUE_OR_RETURN(convertContainer<AttributesGroups>( aidl.attributesGroups, aidl.attributesGroups, aidl2legacy_AudioHalAttributeGroup_AttributesGroup)); aidl2legacy_AudioHalAttributeGroup_AttributesGroup)); Loading