ALSA Library Reference Manual
NANE
snd_mixer_read - Mixerインターフェースのイベント処理をする関数
SYNOPSIS
DESCRIPTION
snd_mixer_read関数は、Mixerインターフェースで発生したイベントの種類によって、*callbacks構造体に設定されたコールバック関数を呼び出す。
コールバック関数には以下のものが指定できる。
- void callbacks->(*rebuild)(void *private_data);
- この関数は、SND_MIXER_READ_REBUILDのイベントが発生した時に呼び出される。これはMixerインターフェースの構成に変更があった場合である。void *callbacks->private_dataにアプリケーションからこの関数へ渡したい何らかの情報を指定する。
- void callbacks->(*element) (void *private_data, int cmd, snd_mixer_eid_t *eid);
- この関数は、以下のイベントが発生した時に呼び出される。
- SND_MIXER_READ_ELEMENT_VALUE
- エレメントの内容に変更があった。
- SND_MIXER_READ_ELEMENT_CHANDE
- エレメントが変更された。
- SND_MIXER_READ_ELEMENT_ROUTE
- エレメントの経路に変更があった。
- SND_MIXER_READ_ELEMENT_ADD
- エレメントが追加された。
- SND_MIXER_READ_ELEMENT_REMOVE
- エレメントが外された。
void *callbacks->private_dataにアプリケーションからコールバック関数へ渡したい何らかの情報を指定する。このコールバック関数には、int callbacks->cmdに先に述べたイベントの種類を、snd_mixer_gid_t *eidに変更のあったグループを返す。
- void callbacks->(*group) (void *private_data, int cmd, snd_mixer_gid_t *eid);
- この関数は、以下のイベントが発生した時に呼び出される。
- SND_MIXER_READ_GROUP_CHANDE
- グループが変更された。
- SND_MIXER_READ_GROUP_ADD
- グループが追加された。
- SND_MIXER_READ_GROUP_REMOVE
- グループが外された。
void *callbacks->private_dataにアプリケーションからこの関数へ渡したい何らかの情報を指定する。このコールバック関数には、int callbacks->cmdに先に述べたイベントの種類を、snd_mixer_gid_t *gidに変更のあったグループを返す。
RETURN VALUE
snd_mixer_read関数は成功すれば発生したイベントの数を返し、そうでなければエラーコードを返す。
ERRORS
- -EINVAL
- snd_mixer_readで与えられたhandleまたはfilterはNULLである。
SEE ALSO