Completed mixer API. Improved iterators. Renamed control values struct. Rewritten simple elements implementation

This commit is contained in:
Abramo Bagnara 2001-02-11 15:45:35 +00:00
parent 38033b49dd
commit a2d3434961
54 changed files with 2081 additions and 1712 deletions

View file

@ -32,31 +32,37 @@ void snd_mixer_elem_set_callback_private(snd_mixer_elem_t *obj, void * val);
snd_mixer_elem_type_t snd_mixer_elem_get_type(const snd_mixer_elem_t *obj);
size_t snd_mixer_selem_sizeof();
#define snd_mixer_selem_alloca(ptr) ({ assert(ptr); *ptr = (snd_mixer_selem_t *) alloca(snd_mixer_selem_sizeof()); memset(*ptr, 0, snd_mixer_selem_sizeof()); 0; })
int snd_mixer_selem_malloc(snd_mixer_selem_t **ptr);
void snd_mixer_selem_free(snd_mixer_selem_t *obj);
void snd_mixer_selem_copy(snd_mixer_selem_t *dst, const snd_mixer_selem_t *src);
size_t snd_mixer_selem_info_sizeof();
#define snd_mixer_selem_info_alloca(ptr) ({ assert(ptr); *ptr = (snd_mixer_selem_info_t *) alloca(snd_mixer_selem_info_sizeof()); memset(*ptr, 0, snd_mixer_selem_info_sizeof()); 0; })
int snd_mixer_selem_info_malloc(snd_mixer_selem_info_t **ptr);
void snd_mixer_selem_info_free(snd_mixer_selem_info_t *obj);
void snd_mixer_selem_info_copy(snd_mixer_selem_info_t *dst, const snd_mixer_selem_info_t *src);
long snd_mixer_selem_get_min(const snd_mixer_selem_t *obj);
long snd_mixer_selem_info_get_min(const snd_mixer_selem_info_t *obj);
long snd_mixer_selem_get_max(const snd_mixer_selem_t *obj);
long snd_mixer_selem_info_get_max(const snd_mixer_selem_info_t *obj);
int snd_mixer_selem_get_capture_group(const snd_mixer_selem_t *obj);
int snd_mixer_selem_info_get_capture_group(const snd_mixer_selem_info_t *obj);
int snd_mixer_selem_has_volume(const snd_mixer_selem_t *obj);
int snd_mixer_selem_info_has_volume(const snd_mixer_selem_info_t *obj);
int snd_mixer_selem_has_joined_volume(const snd_mixer_selem_t *obj);
int snd_mixer_selem_info_has_joined_volume(const snd_mixer_selem_info_t *obj);
int snd_mixer_selem_has_mute(const snd_mixer_selem_t *obj);
int snd_mixer_selem_info_has_mute(const snd_mixer_selem_info_t *obj);
int snd_mixer_selem_has_joined_mute(const snd_mixer_selem_t *obj);
int snd_mixer_selem_info_has_joined_mute(const snd_mixer_selem_info_t *obj);
int snd_mixer_selem_has_capture(const snd_mixer_selem_t *obj);
int snd_mixer_selem_info_has_capture(const snd_mixer_selem_info_t *obj);
int snd_mixer_selem_has_joined_capture(const snd_mixer_selem_t *obj);
int snd_mixer_selem_info_has_joined_capture(const snd_mixer_selem_info_t *obj);
int snd_mixer_selem_has_exclusive_capture(const snd_mixer_selem_t *obj);
int snd_mixer_selem_info_has_exclusive_capture(const snd_mixer_selem_info_t *obj);
size_t snd_mixer_selem_value_sizeof();
#define snd_mixer_selem_value_alloca(ptr) ({ assert(ptr); *ptr = (snd_mixer_selem_value_t *) alloca(snd_mixer_selem_value_sizeof()); memset(*ptr, 0, snd_mixer_selem_value_sizeof()); 0; })
int snd_mixer_selem_value_malloc(snd_mixer_selem_value_t **ptr);
void snd_mixer_selem_value_free(snd_mixer_selem_value_t *obj);
void snd_mixer_selem_value_copy(snd_mixer_selem_value_t *dst, const snd_mixer_selem_value_t *src);
#ifdef __cplusplus