audiopolicy: allows to fallback or not on default strategy/group

When attributes does not match a group or strategy, it falls back on
respectively default group or strategy.

This CL allows to control whether fallback shall be done or not.
It allows for example to detect orphans attributes and prevent from
overwritting volume for example.

Bug: 179759299
Test: make

Signed-off-by: Francois Gaffie <francois.gaffie@renault.com>
Change-Id: Ieeeab48ca3ec2b031b7a99e2e7ab26d2e4d70535
diff --git a/services/audiopolicy/service/AudioPolicyService.h b/services/audiopolicy/service/AudioPolicyService.h
index 72d8f28..13b5e4d 100644
--- a/services/audiopolicy/service/AudioPolicyService.h
+++ b/services/audiopolicy/service/AudioPolicyService.h
@@ -197,10 +197,12 @@
     binder::Status listAudioProductStrategies(
             std::vector<media::AudioProductStrategy>* _aidl_return) override;
     binder::Status getProductStrategyFromAudioAttributes(const media::AudioAttributesEx& aa,
+                                                         bool fallbackOnDefault,
                                                          int32_t* _aidl_return) override;
     binder::Status listAudioVolumeGroups(
             std::vector<media::AudioVolumeGroup>* _aidl_return) override;
     binder::Status getVolumeGroupFromAudioAttributes(const media::AudioAttributesEx& aa,
+                                                     bool fallbackOnDefault,
                                                      int32_t* _aidl_return) override;
     binder::Status setRttEnabled(bool enabled) override;
     binder::Status isCallScreenModeSupported(bool* _aidl_return) override;