From 79e733f00dc78694bea23154c5a803009046b51a Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Tue, 27 Jul 1999 19:45:10 +0000 Subject: [PATCH] Mixer read filter... --- include/mixer.h | 1 + src/mixer/mixer.c | 28 ++++++++++++++++++++-------- 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/include/mixer.h b/include/mixer.h index 1130b7a2..6d4cbf3e 100644 --- a/include/mixer.h +++ b/include/mixer.h @@ -31,6 +31,7 @@ int snd_mixer_group_write(snd_mixer_t *handle, snd_mixer_group_t * group); int snd_mixer_element_info(snd_mixer_t *handle, snd_mixer_element_info_t * info); int snd_mixer_element_read(snd_mixer_t *handle, snd_mixer_element_t * element); int snd_mixer_element_write(snd_mixer_t *handle, snd_mixer_element_t * element); +int snd_mixer_read_filter(snd_mixer_t *handle, snd_mixer_filter_t * filter); int snd_mixer_read(snd_mixer_t *handle, snd_mixer_callbacks_t * callbacks); void snd_mixer_set_bit(unsigned int *bitmap, int bit, int val); diff --git a/src/mixer/mixer.c b/src/mixer/mixer.c index f8a2f2d4..e5409a9d 100644 --- a/src/mixer/mixer.c +++ b/src/mixer/mixer.c @@ -113,7 +113,7 @@ int snd_mixer_elements(snd_mixer_t *handle, snd_mixer_elements_t * elements) snd_mixer_t *mixer; mixer = handle; - if (!mixer) + if (!mixer || !elements) return -EINVAL; if (ioctl(mixer->fd, SND_MIXER_IOCTL_ELEMENTS, elements) < 0) return -errno; @@ -125,7 +125,7 @@ int snd_mixer_routes(snd_mixer_t *handle, snd_mixer_routes_t * routes) snd_mixer_t *mixer; mixer = handle; - if (!mixer) + if (!mixer || !routes) return -EINVAL; if (ioctl(mixer->fd, SND_MIXER_IOCTL_ROUTES, routes) < 0) return -errno; @@ -137,7 +137,7 @@ int snd_mixer_groups(snd_mixer_t *handle, snd_mixer_groups_t * groups) snd_mixer_t *mixer; mixer = handle; - if (!mixer) + if (!mixer || !groups) return -EINVAL; if (ioctl(mixer->fd, SND_MIXER_IOCTL_GROUPS, groups) < 0) return -errno; @@ -149,7 +149,7 @@ int snd_mixer_group_read(snd_mixer_t *handle, snd_mixer_group_t * group) snd_mixer_t *mixer; mixer = handle; - if (!mixer) + if (!mixer || !group) return -EINVAL; if (ioctl(mixer->fd, SND_MIXER_IOCTL_GROUP_READ, group) < 0) return -errno; @@ -161,7 +161,7 @@ int snd_mixer_group_write(snd_mixer_t *handle, snd_mixer_group_t * group) snd_mixer_t *mixer; mixer = handle; - if (!mixer) + if (!mixer || !group) return -EINVAL; if (ioctl(mixer->fd, SND_MIXER_IOCTL_GROUP_WRITE, group) < 0) return -errno; @@ -173,7 +173,7 @@ int snd_mixer_element_info(snd_mixer_t *handle, snd_mixer_element_info_t * info) snd_mixer_t *mixer; mixer = handle; - if (!mixer) + if (!mixer || !info) return -EINVAL; if (ioctl(mixer->fd, SND_MIXER_IOCTL_ELEMENT_INFO, info) < 0) return -errno; @@ -185,7 +185,7 @@ int snd_mixer_element_read(snd_mixer_t *handle, snd_mixer_element_t * element) snd_mixer_t *mixer; mixer = handle; - if (!mixer) + if (!mixer || !element) return -EINVAL; if (ioctl(mixer->fd, SND_MIXER_IOCTL_ELEMENT_READ, element) < 0) return -errno; @@ -197,13 +197,25 @@ int snd_mixer_element_write(snd_mixer_t *handle, snd_mixer_element_t * element) snd_mixer_t *mixer; mixer = handle; - if (!mixer) + if (!mixer || !element) return -EINVAL; if (ioctl(mixer->fd, SND_MIXER_IOCTL_ELEMENT_WRITE, element) < 0) return -errno; return 0; } +int snd_mixer_read_filter(snd_mixer_t *handle, snd_mixer_filter_t * filter) +{ + snd_mixer_t *mixer; + + mixer = handle; + if (!mixer || !filter) + return -EINVAL; + if (ioctl(mixer->fd, SND_MIXER_IOCTL_READ_FILTER, filter) < 0) + return -errno; + return 0; +} + int snd_mixer_read(snd_mixer_t *handle, snd_mixer_callbacks_t * callbacks) { snd_mixer_t *mixer; -- 2.47.1