Control callback functions
Synopsis:
typedef struct snd_ctl_callbacks {
void *private_data; /* should be used by an application */
void (*rebuild) (void *private_data);
void (*xswitch) (void *private_data, int cmd,
int iface, snd_switch_list_item_t *item);
void *reserved[29]; /* reserved for future use - must be NULL!!! */
} snd_ctl_callbacks_t;
Description:
Use the snd_ctl_callbacks_t structure to define the callback
functions that you need to handle control events.
Pass a pointer to an instance of this structure to
snd_ctl_read().
The members of the snd_ctl_callbacks_t structure include:
- private_data, a pointer to arbitrary data that
you want to pass to the callbacks
- pointers to the callbacks, which are described below.
Note:
Make sure that you zero-fill any members that you aren't interested in.
You can zero-fill the entire snd_ctl_callbacks_t structure
if you aren't interested in tracking any of these events.
rebuild callback
The rebuild callback is called whenever the control device
is rebuilt.
Its only argument is the private_data that you specified in
this structure.
xswitch callback
The xswitch callback is called whenever a switch changes.
Its arguments are:
- private_data
- A pointer to the arbitrary data that you specified in this structure.
- cmd
- One of:
- SND_CTL_READ_SWITCH_VALUE
- SND_CTL_READ_SWITCH_CHANGE
- SND_CTL_READ_SWITCH_ADD
- SND_CTL_READ_SWITCH_REMOVE
- iface
- The device interface the switch is natively associated with.
The possible values are (from <sys/asound.h>):
- SND_CTL_IFACE_CONTROL
- SND_CTL_IFACE_MIXER
- SND_CTL_IFACE_PCM_PLAYBACK
- SND_CTL_IFACE_PCM_CAPTURE
- item
- A pointer to a snd_switch_list_item_t structure that
identifies the specific switch that's been changed.
This structure has only a name member.
Classification:
QNX Neutrino