1998-08-13 15:42:56 +00:00
|
|
|
/****************************************************************************
|
|
|
|
|
* *
|
|
|
|
|
* control.h *
|
|
|
|
|
* Control Interface *
|
|
|
|
|
* *
|
|
|
|
|
****************************************************************************/
|
|
|
|
|
|
1999-05-04 19:21:28 +00:00
|
|
|
typedef struct snd_ctl_callbacks {
|
|
|
|
|
void *private_data; /* should be used by an application */
|
|
|
|
|
void (*rebuild) (void *private_data);
|
2000-03-01 18:12:30 +00:00
|
|
|
void (*xswitch) (void *private_data, int cmd,
|
|
|
|
|
int iface, int device, int channel,
|
|
|
|
|
snd_switch_list_item_t *item);
|
1999-05-04 19:21:28 +00:00
|
|
|
void *reserved[29]; /* reserved for the future use - must be NULL!!! */
|
|
|
|
|
} snd_ctl_callbacks_t;
|
|
|
|
|
|
1998-08-13 15:42:56 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
|
extern "C" {
|
|
|
|
|
#endif
|
|
|
|
|
|
1999-06-02 00:40:30 +00:00
|
|
|
typedef struct snd_ctl snd_ctl_t;
|
|
|
|
|
|
1999-01-30 18:35:52 +00:00
|
|
|
int snd_card_load(int card);
|
1998-11-27 15:06:26 +00:00
|
|
|
int snd_cards(void);
|
|
|
|
|
unsigned int snd_cards_mask(void);
|
|
|
|
|
int snd_card_name(const char *name);
|
1999-12-11 10:50:39 +00:00
|
|
|
int snd_card_get_name(int card, char **name);
|
|
|
|
|
int snd_card_get_longname(int card, char **name);
|
1998-11-27 15:06:26 +00:00
|
|
|
|
1999-05-02 16:21:30 +00:00
|
|
|
int snd_defaults_card(void);
|
|
|
|
|
int snd_defaults_mixer_card(void);
|
|
|
|
|
int snd_defaults_mixer_device(void);
|
|
|
|
|
int snd_defaults_pcm_card(void);
|
|
|
|
|
int snd_defaults_pcm_device(void);
|
|
|
|
|
int snd_defaults_rawmidi_card(void);
|
|
|
|
|
int snd_defaults_rawmidi_device(void);
|
|
|
|
|
|
1999-06-02 00:40:30 +00:00
|
|
|
int snd_ctl_open(snd_ctl_t **handle, int card);
|
|
|
|
|
int snd_ctl_close(snd_ctl_t *handle);
|
|
|
|
|
int snd_ctl_file_descriptor(snd_ctl_t *handle);
|
|
|
|
|
int snd_ctl_hw_info(snd_ctl_t *handle, struct snd_ctl_hw_info *info);
|
|
|
|
|
int snd_ctl_switch_list(snd_ctl_t *handle, snd_switch_list_t * list);
|
|
|
|
|
int snd_ctl_switch_read(snd_ctl_t *handle, snd_switch_t * sw);
|
|
|
|
|
int snd_ctl_switch_write(snd_ctl_t *handle, snd_switch_t * sw);
|
1999-06-22 13:18:24 +00:00
|
|
|
int snd_ctl_hwdep_info(snd_ctl_t *handle, int dev, snd_hwdep_info_t * info);
|
1999-06-02 00:40:30 +00:00
|
|
|
int snd_ctl_pcm_info(snd_ctl_t *handle, int dev, snd_pcm_info_t * info);
|
2000-05-27 16:52:17 +00:00
|
|
|
int snd_ctl_pcm_stream_info(snd_ctl_t *handle, int dev, int channel, int subdev, snd_pcm_stream_info_t * info);
|
|
|
|
|
int snd_ctl_pcm_stream_prefer_subdevice(snd_ctl_t *handle, int dev, int channel, int subdev);
|
1999-06-02 00:40:30 +00:00
|
|
|
int snd_ctl_mixer_info(snd_ctl_t *handle, int dev, snd_mixer_info_t * info);
|
|
|
|
|
int snd_ctl_rawmidi_info(snd_ctl_t *handle, int dev, snd_rawmidi_info_t * info);
|
|
|
|
|
int snd_ctl_read(snd_ctl_t *handle, snd_ctl_callbacks_t * callbacks);
|
1998-08-13 15:42:56 +00:00
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
|