ALSA project - the C library reference
|
![]() |
Files | |
file | pcm_hooks.c |
PCM Hook Interface. | |
Typedefs | |
typedef struct _snd_pcm_hook | snd_pcm_hook_t |
typedef int(* | snd_pcm_hook_func_t) (snd_pcm_hook_t *hook) |
Enumerations | |
enum | snd_pcm_hook_type_t { SND_PCM_HOOK_TYPE_HW_PARAMS = 0, SND_PCM_HOOK_TYPE_HW_FREE, SND_PCM_HOOK_TYPE_CLOSE, SND_PCM_HOOK_TYPE_LAST = SND_PCM_HOOK_TYPE_CLOSE } |
Functions | |
snd_pcm_t * | snd_pcm_hook_get_pcm (snd_pcm_hook_t *hook) |
Get PCM handle for a PCM hook. More... | |
void * | snd_pcm_hook_get_private (snd_pcm_hook_t *hook) |
Get callback function private data for a PCM hook. More... | |
void | snd_pcm_hook_set_private (snd_pcm_hook_t *hook, void *private_data) |
Set callback function private data for a PCM hook. More... | |
int | snd_pcm_hook_add (snd_pcm_hook_t **hookp, snd_pcm_t *pcm, snd_pcm_hook_type_t type, snd_pcm_hook_func_t func, void *private_data) |
Add a PCM hook at end of hooks chain. More... | |
int | snd_pcm_hook_remove (snd_pcm_hook_t *hook) |
Remove a PCM hook. More... | |
See the PCM (digital audio) interface page for more details.
typedef int(* snd_pcm_hook_func_t) (snd_pcm_hook_t *hook) |
PCM hook callback function
typedef struct _snd_pcm_hook snd_pcm_hook_t |
PCM hook container
enum snd_pcm_hook_type_t |
type of pcm hook
int snd_pcm_hook_add | ( | snd_pcm_hook_t ** | hookp, |
snd_pcm_t * | pcm, | ||
snd_pcm_hook_type_t | type, | ||
snd_pcm_hook_func_t | func, | ||
void * | private_data | ||
) |
Add a PCM hook at end of hooks chain.
hookp | Returned PCM hook handle |
pcm | PCM handle |
type | PCM hook type |
func | PCM hook callback function |
private_data | PCM hook private data |
Warning: an hook callback function cannot remove an hook of the same type different from itself
snd_pcm_t* snd_pcm_hook_get_pcm | ( | snd_pcm_hook_t * | hook | ) |
Get PCM handle for a PCM hook.
hook | PCM hook handle |
void* snd_pcm_hook_get_private | ( | snd_pcm_hook_t * | hook | ) |
Get callback function private data for a PCM hook.
hook | PCM hook handle |
int snd_pcm_hook_remove | ( | snd_pcm_hook_t * | hook | ) |
Remove a PCM hook.
hook | PCM hook handle |
Warning: an hook callback cannot remove an hook of the same type different from itself
void snd_pcm_hook_set_private | ( | snd_pcm_hook_t * | hook, |
void * | private_data | ||
) |
Set callback function private data for a PCM hook.
hook | PCM hook handle |
private_data | The private data value |