summaryrefslogtreecommitdiffstats
path: root/services/audiopolicy/common/managerdefinitions/include/AudioInputDescriptor.h
diff options
context:
space:
mode:
Diffstat (limited to 'services/audiopolicy/common/managerdefinitions/include/AudioInputDescriptor.h')
-rw-r--r--services/audiopolicy/common/managerdefinitions/include/AudioInputDescriptor.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/services/audiopolicy/common/managerdefinitions/include/AudioInputDescriptor.h b/services/audiopolicy/common/managerdefinitions/include/AudioInputDescriptor.h
index 599c295..7536a37 100644
--- a/services/audiopolicy/common/managerdefinitions/include/AudioInputDescriptor.h
+++ b/services/audiopolicy/common/managerdefinitions/include/AudioInputDescriptor.h
@@ -20,6 +20,7 @@
#include <utils/Errors.h>
#include <system/audio.h>
#include <utils/SortedVector.h>
+#include <utils/KeyedVector.h>
namespace android {
@@ -34,6 +35,8 @@ public:
AudioInputDescriptor(const sp<IOProfile>& profile);
void setIoHandle(audio_io_handle_t ioHandle);
+ audio_module_handle_t getModuleHandle() const;
+
status_t dump(int fd);
audio_port_handle_t mId;
@@ -56,4 +59,27 @@ public:
void toAudioPort(struct audio_port *port) const;
};
+class AudioInputCollection :
+ public DefaultKeyedVector< audio_io_handle_t, sp<AudioInputDescriptor> >
+{
+public:
+ bool isSourceActive(audio_source_t source) const;
+
+ sp<AudioInputDescriptor> getInputFromId(audio_port_handle_t id) const;
+
+ uint32_t activeInputsCount() const;
+
+ /**
+ * return io handle of active input or 0 if no input is active
+ * Only considers inputs from physical devices (e.g. main mic, headset mic) when
+ * ignoreVirtualInputs is true.
+ */
+ audio_io_handle_t getActiveInput(bool ignoreVirtualInputs = true);
+
+ audio_devices_t getSupportedDevices(audio_io_handle_t handle) const;
+
+ status_t dump(int fd) const;
+};
+
+
}; // namespace android