Add DeviceIdSet to AudioContainers
This CL adds a new container type for a set of device ids.
This is part of a larger change to add getRoutedDevices() functions.
Bug: 367816690
Test: make
Flag: android.media.audio.routed_device_ids
Change-Id: Id27fdbec9f259dfd86cc288cb58343d452048e4d
diff --git a/media/libaudiofoundation/AudioContainers.cpp b/media/libaudiofoundation/AudioContainers.cpp
index e1265cf..6727562 100644
--- a/media/libaudiofoundation/AudioContainers.cpp
+++ b/media/libaudiofoundation/AudioContainers.cpp
@@ -130,6 +130,27 @@
return ss.str();
}
+std::string toString(const DeviceIdSet& deviceIds) {
+ if (deviceIds.empty()) {
+ return "Empty device ids";
+ }
+ std::stringstream ss;
+ for (auto it = deviceIds.begin(); it != deviceIds.end(); ++it) {
+ if (it != deviceIds.begin()) {
+ ss << ", ";
+ }
+ ss << *it;
+ }
+ return ss.str();
+}
+
+audio_port_handle_t getFirstDeviceId(const DeviceIdSet& deviceIds) {
+ if (deviceIds.empty()) {
+ return AUDIO_PORT_HANDLE_NONE;
+ }
+ return *(deviceIds.begin());
+}
+
AudioProfileAttributesMultimap createAudioProfilesAttrMap(audio_profile profiles[],
uint32_t first,
uint32_t last) {