Audio V5: move Stream Metadata to common

So that it can be used by the Bluetooth HAL.

Test: compile
Change-Id: I2e2b1e12e1f837183c4edbd1d330a13a67d1ecaf
Signed-off-by: Kevin Rocard <krocard@google.com>
diff --git a/audio/5.0/types.hal b/audio/5.0/types.hal
index f58bfb0..988f584 100644
--- a/audio/5.0/types.hal
+++ b/audio/5.0/types.hal
@@ -122,39 +122,6 @@
     NOT_FULL = 1 << 1
 };
 
-/** Metadata of a playback track for a StreamOut. */
-struct PlaybackTrackMetadata {
-    AudioUsage usage;
-    AudioContentType contentType;
-    /**
-     * Positive linear gain applied to the track samples. 0 being muted and 1 is no attenuation,
-     * 2 means double amplification...
-     * Must not be negative.
-     */
-    float gain;
-};
-
-/** Metadatas of the source of a StreamOut. */
-struct SourceMetadata {
-    vec<PlaybackTrackMetadata> tracks;
-};
-
-/** Metadata of a record track for a StreamIn. */
-struct RecordTrackMetadata {
-    AudioSource source;
-    /**
-     * Positive linear gain applied to the track samples. 0 being muted and 1 is no attenuation,
-     * 2 means double amplification...
-     * Must not be negative.
-     */
-    float gain;
-};
-
-/** Metadatas of the source of a StreamIn. */
-struct SinkMetadata {
-    vec<RecordTrackMetadata> tracks;
-};
-
 /*
  * Microphone information
  *
diff --git a/audio/common/5.0/types.hal b/audio/common/5.0/types.hal
index eb09b1f..2ce2929 100644
--- a/audio/common/5.0/types.hal
+++ b/audio/common/5.0/types.hal
@@ -706,6 +706,39 @@
     uint64_t frameCount;
 };
 
+/** Metadata of a playback track for a StreamOut. */
+struct PlaybackTrackMetadata {
+    AudioUsage usage;
+    AudioContentType contentType;
+    /**
+     * Positive linear gain applied to the track samples. 0 being muted and 1 is no attenuation,
+     * 2 means double amplification...
+     * Must not be negative.
+     */
+    float gain;
+};
+
+/** Metadatas of the source of a StreamOut. */
+struct SourceMetadata {
+    vec<PlaybackTrackMetadata> tracks;
+};
+
+/** Metadata of a record track for a StreamIn. */
+struct RecordTrackMetadata {
+    AudioSource source;
+    /**
+     * Positive linear gain applied to the track samples. 0 being muted and 1 is no attenuation,
+     * 2 means double amplification...
+     * Must not be negative.
+     */
+    float gain;
+};
+
+/** Metadatas of the source of a StreamIn. */
+struct SinkMetadata {
+    vec<RecordTrackMetadata> tracks;
+};
+
 
 /*
  *
diff --git a/audio/core/all-versions/default/include/core/default/Device.h b/audio/core/all-versions/default/include/core/default/Device.h
index 75ae8d3..9975d5b 100644
--- a/audio/core/all-versions/default/include/core/default/Device.h
+++ b/audio/core/all-versions/default/include/core/default/Device.h
@@ -60,9 +60,12 @@
 using ::android::hardware::audio::CPP_VERSION::ParameterValue;
 using ::android::hardware::audio::CPP_VERSION::Result;
 
-#if MAJOR_VERSION >= 4
+#if MAJOR_VERSION == 4
 using ::android::hardware::audio::CPP_VERSION::SinkMetadata;
 using ::android::hardware::audio::CPP_VERSION::SourceMetadata;
+#elif MAJOR_VERSION >= 5
+using ::android::hardware::audio::common::CPP_VERSION::SinkMetadata;
+using ::android::hardware::audio::common::CPP_VERSION::SourceMetadata;
 #endif
 
 struct Device : public IDevice, public ParametersUtil {
diff --git a/audio/core/all-versions/vts/functional/4.0/AudioPrimaryHidlHalUtils.h b/audio/core/all-versions/vts/functional/4.0/AudioPrimaryHidlHalUtils.h
index c30f378..8415053 100644
--- a/audio/core/all-versions/vts/functional/4.0/AudioPrimaryHidlHalUtils.h
+++ b/audio/core/all-versions/vts/functional/4.0/AudioPrimaryHidlHalUtils.h
@@ -35,8 +35,13 @@
 using ::android::hardware::audio::common::CPP_VERSION::AudioContentType;
 using ::android::hardware::audio::common::CPP_VERSION::AudioUsage;
 using ::android::hardware::audio::CPP_VERSION::MicrophoneInfo;
+#if MAJOR_VERSION < 5
 using ::android::hardware::audio::CPP_VERSION::SinkMetadata;
 using ::android::hardware::audio::CPP_VERSION::SourceMetadata;
+#else
+using ::android::hardware::audio::common::CPP_VERSION::SinkMetadata;
+using ::android::hardware::audio::common::CPP_VERSION::SourceMetadata;
+#endif
 
 struct Parameters {
     template <class T, class ReturnIn>