ALSA project - the C library reference
Data Fields
snd_ctl_ext_callback_t Struct Reference

#include <control_external.h>

Data Fields

void(* close )(snd_ctl_ext_t *ext)
 
int(* elem_count )(snd_ctl_ext_t *ext)
 
int(* elem_list )(snd_ctl_ext_t *ext, unsigned int offset, snd_ctl_elem_id_t *id)
 
snd_ctl_ext_key_t(* find_elem )(snd_ctl_ext_t *ext, const snd_ctl_elem_id_t *id)
 
void(* free_key )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key)
 
int(* get_attribute )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, int *type, unsigned int *acc, unsigned int *count)
 
int(* get_integer_info )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, long *imin, long *imax, long *istep)
 
int(* get_integer64_info )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, int64_t *imin, int64_t *imax, int64_t *istep)
 
int(* get_enumerated_info )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, unsigned int *items)
 
int(* get_enumerated_name )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, unsigned int item, char *name, size_t name_max_len)
 
int(* read_integer )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, long *value)
 
int(* read_integer64 )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, int64_t *value)
 
int(* read_enumerated )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, unsigned int *items)
 
int(* read_bytes )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, unsigned char *data, size_t max_bytes)
 
int(* read_iec958 )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, snd_aes_iec958_t *iec958)
 
int(* write_integer )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, long *value)
 
int(* write_integer64 )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, int64_t *value)
 
int(* write_enumerated )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, unsigned int *items)
 
int(* write_bytes )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, unsigned char *data, size_t max_bytes)
 
int(* write_iec958 )(snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, snd_aes_iec958_t *iec958)
 
void(* subscribe_events )(snd_ctl_ext_t *ext, int subscribe)
 
int(* read_event )(snd_ctl_ext_t *ext, snd_ctl_elem_id_t *id, unsigned int *event_mask)
 
int(* poll_descriptors_count )(snd_ctl_ext_t *ext)
 
int(* poll_descriptors )(snd_ctl_ext_t *ext, struct pollfd *pfds, unsigned int space)
 
int(* poll_revents )(snd_ctl_ext_t *ext, struct pollfd *pfds, unsigned int nfds, unsigned short *revents)
 

Detailed Description

Callback table of ext.

Callback table of control ext

Field Documentation

◆ close

void(* snd_ctl_ext_callback_t::close) (snd_ctl_ext_t *ext)

close the control handle; optional

◆ elem_count

int(* snd_ctl_ext_callback_t::elem_count) (snd_ctl_ext_t *ext)

return the total number of elements; required

◆ elem_list

int(* snd_ctl_ext_callback_t::elem_list) (snd_ctl_ext_t *ext, unsigned int offset, snd_ctl_elem_id_t *id)

return the element id of the given offset (array index); required

◆ find_elem

snd_ctl_ext_key_t(* snd_ctl_ext_callback_t::find_elem) (snd_ctl_ext_t *ext, const snd_ctl_elem_id_t *id)

convert the element id to a search key; required

◆ free_key

void(* snd_ctl_ext_callback_t::free_key) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key)

the destructor of the key; optional

◆ get_attribute

int(* snd_ctl_ext_callback_t::get_attribute) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, int *type, unsigned int *acc, unsigned int *count)

get the attribute of the element; required

◆ get_enumerated_info

int(* snd_ctl_ext_callback_t::get_enumerated_info) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, unsigned int *items)

get the element information of enumerated type

◆ get_enumerated_name

int(* snd_ctl_ext_callback_t::get_enumerated_name) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, unsigned int item, char *name, size_t name_max_len)

get the name of the enumerated item

◆ get_integer64_info

int(* snd_ctl_ext_callback_t::get_integer64_info) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, int64_t *imin, int64_t *imax, int64_t *istep)

get the element information of integer64 type

◆ get_integer_info

int(* snd_ctl_ext_callback_t::get_integer_info) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, long *imin, long *imax, long *istep)

get the element information of integer type

◆ poll_descriptors

int(* snd_ctl_ext_callback_t::poll_descriptors) (snd_ctl_ext_t *ext, struct pollfd *pfds, unsigned int space)

fill the poll descriptors; optional

◆ poll_descriptors_count

int(* snd_ctl_ext_callback_t::poll_descriptors_count) (snd_ctl_ext_t *ext)

return the number of poll descriptors; optional

◆ poll_revents

int(* snd_ctl_ext_callback_t::poll_revents) (snd_ctl_ext_t *ext, struct pollfd *pfds, unsigned int nfds, unsigned short *revents)

mangle the revents of poll descriptors

◆ read_bytes

int(* snd_ctl_ext_callback_t::read_bytes) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, unsigned char *data, size_t max_bytes)

read the current values of bytes type

◆ read_enumerated

int(* snd_ctl_ext_callback_t::read_enumerated) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, unsigned int *items)

read the current values of enumerated type

◆ read_event

int(* snd_ctl_ext_callback_t::read_event) (snd_ctl_ext_t *ext, snd_ctl_elem_id_t *id, unsigned int *event_mask)

read a pending notification event; optional

◆ read_iec958

int(* snd_ctl_ext_callback_t::read_iec958) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, snd_aes_iec958_t *iec958)

read the current values of iec958 type

◆ read_integer

int(* snd_ctl_ext_callback_t::read_integer) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, long *value)

read the current values of integer type

◆ read_integer64

int(* snd_ctl_ext_callback_t::read_integer64) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, int64_t *value)

read the current values of integer64 type

◆ subscribe_events

void(* snd_ctl_ext_callback_t::subscribe_events) (snd_ctl_ext_t *ext, int subscribe)

subscribe/unsubscribe the event notification; optional

◆ write_bytes

int(* snd_ctl_ext_callback_t::write_bytes) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, unsigned char *data, size_t max_bytes)

update the current values of bytes type with the given values

◆ write_enumerated

int(* snd_ctl_ext_callback_t::write_enumerated) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, unsigned int *items)

update the current values of enumerated type with the given values

◆ write_iec958

int(* snd_ctl_ext_callback_t::write_iec958) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, snd_aes_iec958_t *iec958)

update the current values of iec958 type with the given values

◆ write_integer

int(* snd_ctl_ext_callback_t::write_integer) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, long *value)

update the current values of integer type with the given values

◆ write_integer64

int(* snd_ctl_ext_callback_t::write_integer64) (snd_ctl_ext_t *ext, snd_ctl_ext_key_t key, int64_t *value)

update the current values of integer64 type with the given values


The documentation for this struct was generated from the following file: