Main Page | Modules | Data Structures | File List | Data Fields | Globals | Related Pages | Examples

Control Interface


Modules

group High level Control Interface
group Setup Control Interface

Data Structures

struct  snd_aes_iec958

Defines

#define SND_CONTROL_DLSYM_VERSION   _dlsym_control_001
#define SND_CTL_EVENT_MASK_REMOVE
#define SND_CTL_EVENT_MASK_VALUE
#define SND_CTL_EVENT_MASK_INFO
#define SND_CTL_EVENT_MASK_ADD
#define SND_CTL_NAME_NONE   ""
#define SND_CTL_NAME_PLAYBACK   "Playback "
#define SND_CTL_NAME_CAPTURE   "Capture "
#define SND_CTL_NAME_IEC958_NONE   ""
#define SND_CTL_NAME_IEC958_SWITCH   "Switch"
#define SND_CTL_NAME_IEC958_VOLUME   "Volume"
#define SND_CTL_NAME_IEC958_DEFAULT   "Default"
#define SND_CTL_NAME_IEC958_MASK   "Mask"
#define SND_CTL_NAME_IEC958_CON_MASK   "Con Mask"
#define SND_CTL_NAME_IEC958_PRO_MASK   "Pro Mask"
#define SND_CTL_NAME_IEC958_PCM_STREAM   "PCM Stream"
#define SND_CTL_NAME_IEC958(expl, direction, what)   "IEC958 " expl SND_CTL_NAME_##direction SND_CTL_NAME_IEC958_##what
#define SND_CTL_POWER_MASK   0xff00
#define SND_CTL_POWER_D0   0x0000
#define SND_CTL_POWER_D1   0x0100
#define SND_CTL_POWER_D2   0x0200
#define SND_CTL_POWER_D3   0x0300
#define SND_CTL_POWER_D3hot   (SND_CTL_POWER_D3|0x0000)
#define SND_CTL_POWER_D3cold   (SND_CTL_POWER_D3|0x0001)
#define SND_CTL_NONBLOCK
#define SND_CTL_ASYNC
#define SND_CTL_READONLY
#define SND_SCTL_NOFREE   0x0001
#define snd_ctl_elem_id_alloca(ptr)
 allocate an invalid snd_ctl_elem_id_t using standard alloca

#define snd_ctl_card_info_alloca(ptr)
 allocate an invalid snd_ctl_card_info_t using standard alloca

#define snd_ctl_event_alloca(ptr)
 allocate an invalid snd_ctl_event_t using standard alloca

#define snd_ctl_elem_list_alloca(ptr)
 allocate an invalid snd_ctl_elem_list_t using standard alloca

#define snd_ctl_elem_info_alloca(ptr)
 allocate an invalid snd_ctl_elem_info_t using standard alloca

#define snd_ctl_elem_value_alloca(ptr)
 allocate an invalid snd_ctl_elem_value_t using standard alloca


Typedefs

typedef snd_aes_iec958 snd_aes_iec958_t
typedef _snd_ctl_card_info snd_ctl_card_info_t
typedef _snd_ctl_elem_id snd_ctl_elem_id_t
typedef _snd_ctl_elem_list snd_ctl_elem_list_t
typedef _snd_ctl_elem_info snd_ctl_elem_info_t
typedef _snd_ctl_elem_value snd_ctl_elem_value_t
typedef _snd_ctl_event snd_ctl_event_t
typedef enum _snd_ctl_elem_type snd_ctl_elem_type_t
typedef enum _snd_ctl_elem_iface snd_ctl_elem_iface_t
typedef enum _snd_ctl_event_type snd_ctl_event_type_t
typedef enum _snd_ctl_type snd_ctl_type_t
typedef _snd_ctl snd_ctl_t
typedef _snd_sctl snd_sctl_t

Enumerations

enum  _snd_ctl_elem_type {
  SND_CTL_ELEM_TYPE_NONE = 0, SND_CTL_ELEM_TYPE_BOOLEAN, SND_CTL_ELEM_TYPE_INTEGER, SND_CTL_ELEM_TYPE_ENUMERATED,
  SND_CTL_ELEM_TYPE_BYTES, SND_CTL_ELEM_TYPE_IEC958, SND_CTL_ELEM_TYPE_INTEGER64, SND_CTL_ELEM_TYPE_LAST = SND_CTL_ELEM_TYPE_INTEGER64
}
enum  _snd_ctl_elem_iface {
  SND_CTL_ELEM_IFACE_CARD = 0, SND_CTL_ELEM_IFACE_HWDEP, SND_CTL_ELEM_IFACE_MIXER, SND_CTL_ELEM_IFACE_PCM,
  SND_CTL_ELEM_IFACE_RAWMIDI, SND_CTL_ELEM_IFACE_TIMER, SND_CTL_ELEM_IFACE_SEQUENCER, SND_CTL_ELEM_IFACE_LAST = SND_CTL_ELEM_IFACE_SEQUENCER
}
enum  _snd_ctl_event_type { SND_CTL_EVENT_ELEM = 0, SND_CTL_EVENT_LAST = SND_CTL_EVENT_ELEM }
enum  _snd_ctl_type { SND_CTL_TYPE_HW, SND_CTL_TYPE_SHM, SND_CTL_TYPE_INET }

Functions

int snd_card_load (int card)
 Try to load the driver for a card.

int snd_card_next (int *card)
 Try to determine the next card.

int snd_card_get_index (const char *name)
 Convert card string to an integer value.

int snd_card_get_name (int card, char **name)
 Obtain the card name.

int snd_card_get_longname (int card, char **name)
 Obtain the card long name.

int snd_ctl_open (snd_ctl_t **ctl, const char *name, int mode)
 Opens a CTL.

int snd_ctl_open_lconf (snd_ctl_t **ctl, const char *name, int mode, snd_config_t *lconf)
 Opens a CTL using local configuration.

int snd_ctl_close (snd_ctl_t *ctl)
 close CTL handle

int snd_ctl_nonblock (snd_ctl_t *ctl, int nonblock)
 set nonblock mode

int snd_async_add_ctl_handler (snd_async_handler_t **handler, snd_ctl_t *ctl, snd_async_callback_t callback, void *private_data)
 Add an async handler for a CTL.

snd_ctl_tsnd_async_handler_get_ctl (snd_async_handler_t *handler)
 Return CTL handle related to an async handler.

int snd_ctl_poll_descriptors_count (snd_ctl_t *ctl)
 get count of poll descriptors for CTL handle

int snd_ctl_poll_descriptors (snd_ctl_t *ctl, struct pollfd *pfds, unsigned int space)
 get poll descriptors

int snd_ctl_poll_descriptors_revents (snd_ctl_t *ctl, struct pollfd *pfds, unsigned int nfds, unsigned short *revents)
 get returned events from poll descriptors

int snd_ctl_subscribe_events (snd_ctl_t *ctl, int subscribe)
 Ask to be informed about events (poll, #snd_ctl_async, snd_ctl_read).

int snd_ctl_card_info (snd_ctl_t *ctl, snd_ctl_card_info_t *info)
 Get card related information.

int snd_ctl_elem_list (snd_ctl_t *ctl, snd_ctl_elem_list_t *list)
 Get a list of element identifiers.

int snd_ctl_elem_info (snd_ctl_t *ctl, snd_ctl_elem_info_t *info)
 Get CTL element information.

int snd_ctl_elem_read (snd_ctl_t *ctl, snd_ctl_elem_value_t *value)
 Get CTL element value.

int snd_ctl_elem_write (snd_ctl_t *ctl, snd_ctl_elem_value_t *value)
 Set CTL element value.

int snd_ctl_elem_lock (snd_ctl_t *ctl, snd_ctl_elem_id_t *id)
 Lock CTL element.

int snd_ctl_elem_unlock (snd_ctl_t *ctl, snd_ctl_elem_id_t *id)
 Unlock CTL element.

int snd_ctl_hwdep_next_device (snd_ctl_t *ctl, int *device)
 Get next hardware dependent device number.

int snd_ctl_hwdep_info (snd_ctl_t *ctl, snd_hwdep_info_t *info)
 Get info about a hardware dependent device.

int snd_ctl_pcm_next_device (snd_ctl_t *ctl, int *device)
 Get next PCM device number.

int snd_ctl_pcm_info (snd_ctl_t *ctl, snd_pcm_info_t *info)
 Get info about a PCM device.

int snd_ctl_pcm_prefer_subdevice (snd_ctl_t *ctl, int subdev)
 Set preferred PCM subdevice number of successive PCM open.

int snd_ctl_rawmidi_next_device (snd_ctl_t *ctl, int *device)
 Get next RawMidi device number.

int snd_ctl_rawmidi_info (snd_ctl_t *ctl, snd_rawmidi_info_t *info)
 Get info about a RawMidi device.

int snd_ctl_rawmidi_prefer_subdevice (snd_ctl_t *ctl, int subdev)
 Set preferred RawMidi subdevice number of successive RawMidi open.

int snd_ctl_set_power_state (snd_ctl_t *ctl, unsigned int state)
 Set Power State to given SND_CTL_POWER_* value and do the power management.

int snd_ctl_get_power_state (snd_ctl_t *ctl, unsigned int *state)
 Get actual Power State.

int snd_ctl_read (snd_ctl_t *ctl, snd_ctl_event_t *event)
 Read an event.

int snd_ctl_wait (snd_ctl_t *ctl, int timeout)
 Wait for a CTL to become ready (i.e. at least one event pending).

const char * snd_ctl_name (snd_ctl_t *ctl)
 get identifier of CTL handle

snd_ctl_type_t snd_ctl_type (snd_ctl_t *ctl)
 get type of CTL handle

const char * snd_ctl_elem_type_name (snd_ctl_elem_type_t type)
 get name of a CTL element type

const char * snd_ctl_elem_iface_name (snd_ctl_elem_iface_t iface)
 get name of a CTL element related interface

const char * snd_ctl_event_type_name (snd_ctl_event_type_t type)
 get name of a CTL event type

unsigned int snd_ctl_event_elem_get_mask (const snd_ctl_event_t *obj)
 Get event mask for an element related event.

unsigned int snd_ctl_event_elem_get_numid (const snd_ctl_event_t *obj)
 Get element numeric identifier for an element related event.

void snd_ctl_event_elem_get_id (const snd_ctl_event_t *obj, snd_ctl_elem_id_t *ptr)
 Get CTL element identifier for an element related event.

snd_ctl_elem_iface_t snd_ctl_event_elem_get_interface (const snd_ctl_event_t *obj)
 Get interface part of CTL element identifier for an element related event.

unsigned int snd_ctl_event_elem_get_device (const snd_ctl_event_t *obj)
 Get device part of CTL element identifier for an element related event.

unsigned int snd_ctl_event_elem_get_subdevice (const snd_ctl_event_t *obj)
 Get subdevice part of CTL element identifier for an element related event.

const char * snd_ctl_event_elem_get_name (const snd_ctl_event_t *obj)
 Get name part of CTL element identifier for an element related event.

unsigned int snd_ctl_event_elem_get_index (const snd_ctl_event_t *obj)
 Get index part of CTL element identifier for an element related event.

int snd_ctl_elem_list_alloc_space (snd_ctl_elem_list_t *obj, unsigned int entries)
 allocate space for CTL element identifiers list

void snd_ctl_elem_list_free_space (snd_ctl_elem_list_t *obj)
 free previously allocated space for CTL element identifiers list

size_t snd_ctl_elem_id_sizeof (void)
 get size of snd_ctl_elem_id_t

int snd_ctl_elem_id_malloc (snd_ctl_elem_id_t **ptr)
 allocate an invalid snd_ctl_elem_id_t using standard malloc

void snd_ctl_elem_id_free (snd_ctl_elem_id_t *obj)
 frees a previously allocated snd_ctl_elem_id_t

void snd_ctl_elem_id_clear (snd_ctl_elem_id_t *obj)
 clear given snd_ctl_elem_id_t object

void snd_ctl_elem_id_copy (snd_ctl_elem_id_t *dst, const snd_ctl_elem_id_t *src)
 copy one snd_ctl_elem_id_t to another

unsigned int snd_ctl_elem_id_get_numid (const snd_ctl_elem_id_t *obj)
 Get numeric identifier from a CTL element identifier.

snd_ctl_elem_iface_t snd_ctl_elem_id_get_interface (const snd_ctl_elem_id_t *obj)
 Get interface part of a CTL element identifier.

unsigned int snd_ctl_elem_id_get_device (const snd_ctl_elem_id_t *obj)
 Get device part of a CTL element identifier.

unsigned int snd_ctl_elem_id_get_subdevice (const snd_ctl_elem_id_t *obj)
 Get subdevice part of a CTL element identifier.

const char * snd_ctl_elem_id_get_name (const snd_ctl_elem_id_t *obj)
 Get name part of a CTL element identifier.

unsigned int snd_ctl_elem_id_get_index (const snd_ctl_elem_id_t *obj)
 Get index part of a CTL element identifier.

void snd_ctl_elem_id_set_numid (snd_ctl_elem_id_t *obj, unsigned int val)
 Set numeric identifier for a CTL element identifier.

void snd_ctl_elem_id_set_interface (snd_ctl_elem_id_t *obj, snd_ctl_elem_iface_t val)
 Set interface part for a CTL element identifier.

void snd_ctl_elem_id_set_device (snd_ctl_elem_id_t *obj, unsigned int val)
 Set device part for a CTL element identifier.

void snd_ctl_elem_id_set_subdevice (snd_ctl_elem_id_t *obj, unsigned int val)
 Set subdevice part for a CTL element identifier.

void snd_ctl_elem_id_set_name (snd_ctl_elem_id_t *obj, const char *val)
 Set name part for a CTL element identifier.

void snd_ctl_elem_id_set_index (snd_ctl_elem_id_t *obj, unsigned int val)
 Set index part for a CTL element identifier.

size_t snd_ctl_card_info_sizeof (void)
 get size of snd_ctl_card_info_t

int snd_ctl_card_info_malloc (snd_ctl_card_info_t **ptr)
 allocate an invalid snd_ctl_card_info_t using standard malloc

void snd_ctl_card_info_free (snd_ctl_card_info_t *obj)
 frees a previously allocated snd_ctl_card_info_t

void snd_ctl_card_info_clear (snd_ctl_card_info_t *obj)
 clear given snd_ctl_card_info_t object

void snd_ctl_card_info_copy (snd_ctl_card_info_t *dst, const snd_ctl_card_info_t *src)
 copy one snd_ctl_card_info_t to another

int snd_ctl_card_info_get_card (const snd_ctl_card_info_t *obj)
 Get card number from a CTL card info.

const char * snd_ctl_card_info_get_id (const snd_ctl_card_info_t *obj)
 Get card identifier from a CTL card info.

const char * snd_ctl_card_info_get_driver (const snd_ctl_card_info_t *obj)
 Get card driver name from a CTL card info.

const char * snd_ctl_card_info_get_name (const snd_ctl_card_info_t *obj)
 Get card name from a CTL card info.

const char * snd_ctl_card_info_get_longname (const snd_ctl_card_info_t *obj)
 Get card long name from a CTL card info.

const char * snd_ctl_card_info_get_mixername (const snd_ctl_card_info_t *obj)
 Get card mixer name from a CTL card info.

const char * snd_ctl_card_info_get_components (const snd_ctl_card_info_t *obj)
 Get card component list from a CTL card info.

size_t snd_ctl_event_sizeof (void)
 get size of snd_ctl_event_t

int snd_ctl_event_malloc (snd_ctl_event_t **ptr)
 allocate an invalid snd_ctl_event_t using standard malloc

void snd_ctl_event_free (snd_ctl_event_t *obj)
 frees a previously allocated snd_ctl_event_t

void snd_ctl_event_clear (snd_ctl_event_t *obj)
 clear given snd_ctl_event_t object

void snd_ctl_event_copy (snd_ctl_event_t *dst, const snd_ctl_event_t *src)
 copy one snd_ctl_event_t to another

snd_ctl_event_type_t snd_ctl_event_get_type (const snd_ctl_event_t *obj)
 Get type of a CTL event.

size_t snd_ctl_elem_list_sizeof (void)
 get size of snd_ctl_elem_list_t

int snd_ctl_elem_list_malloc (snd_ctl_elem_list_t **ptr)
 allocate an invalid snd_ctl_elem_list_t using standard malloc

void snd_ctl_elem_list_free (snd_ctl_elem_list_t *obj)
 frees a previously allocated snd_ctl_elem_list_t

void snd_ctl_elem_list_clear (snd_ctl_elem_list_t *obj)
 clear given snd_ctl_elem_list_t object

void snd_ctl_elem_list_copy (snd_ctl_elem_list_t *dst, const snd_ctl_elem_list_t *src)
 copy one snd_ctl_elem_list_t to another

void snd_ctl_elem_list_set_offset (snd_ctl_elem_list_t *obj, unsigned int val)
 Set index of first wanted CTL element identifier in a CTL element identifiers list.

unsigned int snd_ctl_elem_list_get_used (const snd_ctl_elem_list_t *obj)
 Get number of used entries in CTL element identifiers list.

unsigned int snd_ctl_elem_list_get_count (const snd_ctl_elem_list_t *obj)
 Get total count of elements present in CTL device (information present in every filled CTL element identifiers list).

void snd_ctl_elem_list_get_id (const snd_ctl_elem_list_t *obj, unsigned int idx, snd_ctl_elem_id_t *ptr)
 Get CTL element identifier for an entry of a CTL element identifiers list.

unsigned int snd_ctl_elem_list_get_numid (const snd_ctl_elem_list_t *obj, unsigned int idx)
 Get CTL element numeric identifier for an entry of a CTL element identifiers list.

snd_ctl_elem_iface_t snd_ctl_elem_list_get_interface (const snd_ctl_elem_list_t *obj, unsigned int idx)
 Get interface part of CTL element identifier for an entry of a CTL element identifiers list.

unsigned int snd_ctl_elem_list_get_device (const snd_ctl_elem_list_t *obj, unsigned int idx)
 Get device part of CTL element identifier for an entry of a CTL element identifiers list.

unsigned int snd_ctl_elem_list_get_subdevice (const snd_ctl_elem_list_t *obj, unsigned int idx)
 Get subdevice part of CTL element identifier for an entry of a CTL element identifiers list.

const char * snd_ctl_elem_list_get_name (const snd_ctl_elem_list_t *obj, unsigned int idx)
 Get name part of CTL element identifier for an entry of a CTL element identifiers list.

unsigned int snd_ctl_elem_list_get_index (const snd_ctl_elem_list_t *obj, unsigned int idx)
 Get index part of CTL element identifier for an entry of a CTL element identifiers list.

size_t snd_ctl_elem_info_sizeof (void)
 get size of snd_ctl_elem_info_t

int snd_ctl_elem_info_malloc (snd_ctl_elem_info_t **ptr)
 allocate an invalid snd_ctl_elem_info_t using standard malloc

void snd_ctl_elem_info_free (snd_ctl_elem_info_t *obj)
 frees a previously allocated snd_ctl_elem_info_t

void snd_ctl_elem_info_clear (snd_ctl_elem_info_t *obj)
 clear given snd_ctl_elem_info_t object

void snd_ctl_elem_info_copy (snd_ctl_elem_info_t *dst, const snd_ctl_elem_info_t *src)
 copy one snd_ctl_elem_info_t to another

snd_ctl_elem_type_t snd_ctl_elem_info_get_type (const snd_ctl_elem_info_t *obj)
 Get type from a CTL element id/info.

int snd_ctl_elem_info_is_readable (const snd_ctl_elem_info_t *obj)
 Get info about readability from a CTL element id/info.

int snd_ctl_elem_info_is_writable (const snd_ctl_elem_info_t *obj)
 Get info about writability from a CTL element id/info.

int snd_ctl_elem_info_is_volatile (const snd_ctl_elem_info_t *obj)
 Get info about notification feasibility from a CTL element id/info.

int snd_ctl_elem_info_is_inactive (const snd_ctl_elem_info_t *obj)
 Get info about status from a CTL element id/info.

int snd_ctl_elem_info_is_locked (const snd_ctl_elem_info_t *obj)
 Get info whether an element is locked.

int snd_ctl_elem_info_is_owner (const snd_ctl_elem_info_t *obj)
 Get info if I own an element.

pid_t snd_ctl_elem_info_get_owner (const snd_ctl_elem_info_t *obj)
 Get owner of a locked element.

unsigned int snd_ctl_elem_info_get_count (const snd_ctl_elem_info_t *obj)
 Get number of value entries from a CTL element id/info.

long snd_ctl_elem_info_get_min (const snd_ctl_elem_info_t *obj)
 Get minimum value from a SND_CTL_ELEM_TYPE_INTEGER CTL element id/info.

long snd_ctl_elem_info_get_max (const snd_ctl_elem_info_t *obj)
 Get maximum value from a SND_CTL_ELEM_TYPE_INTEGER CTL element id/info.

long snd_ctl_elem_info_get_step (const snd_ctl_elem_info_t *obj)
 Get value step from a SND_CTL_ELEM_TYPE_INTEGER CTL element id/info.

long long snd_ctl_elem_info_get_min64 (const snd_ctl_elem_info_t *obj)
 Get minimum value from a SND_CTL_ELEM_TYPE_INTEGER64 CTL element id/info.

long long snd_ctl_elem_info_get_max64 (const snd_ctl_elem_info_t *obj)
 Get maximum value from a SND_CTL_ELEM_TYPE_INTEGER64 CTL element id/info.

long long snd_ctl_elem_info_get_step64 (const snd_ctl_elem_info_t *obj)
 Get value step from a SND_CTL_ELEM_TYPE_INTEGER64 CTL element id/info.

unsigned int snd_ctl_elem_info_get_items (const snd_ctl_elem_info_t *obj)
 Get number of items available from a SND_CTL_ELEM_TYPE_ENUMERATED CTL element id/info.

void snd_ctl_elem_info_set_item (snd_ctl_elem_info_t *obj, unsigned int val)
 Select item in a SND_CTL_ELEM_TYPE_ENUMERATED CTL element id/info.

const char * snd_ctl_elem_info_get_item_name (const snd_ctl_elem_info_t *obj)
 Get name for selected item in a SND_CTL_ELEM_TYPE_ENUMERATED CTL element id/info.

int snd_ctl_elem_info_get_dimensions (const snd_ctl_elem_info_t *obj)
 Get count of dimensions for given element.

int snd_ctl_elem_info_get_dimension (const snd_ctl_elem_info_t *obj, unsigned int idx)
 Get specified of dimension width for given element.

void snd_ctl_elem_info_get_id (const snd_ctl_elem_info_t *obj, snd_ctl_elem_id_t *ptr)
 Get CTL element identifier of a CTL element id/info.

unsigned int snd_ctl_elem_info_get_numid (const snd_ctl_elem_info_t *obj)
 Get element numeric identifier of a CTL element id/info.

snd_ctl_elem_iface_t snd_ctl_elem_info_get_interface (const snd_ctl_elem_info_t *obj)
 Get interface part of CTL element identifier of a CTL element id/info.

unsigned int snd_ctl_elem_info_get_device (const snd_ctl_elem_info_t *obj)
 Get device part of CTL element identifier of a CTL element id/info.

unsigned int snd_ctl_elem_info_get_subdevice (const snd_ctl_elem_info_t *obj)
 Get subdevice part of CTL element identifier of a CTL element id/info.

const char * snd_ctl_elem_info_get_name (const snd_ctl_elem_info_t *obj)
 Get name part of CTL element identifier of a CTL element id/info.

unsigned int snd_ctl_elem_info_get_index (const snd_ctl_elem_info_t *obj)
 Get index part of CTL element identifier of a CTL element id/info.

void snd_ctl_elem_info_set_id (snd_ctl_elem_info_t *obj, const snd_ctl_elem_id_t *ptr)
 Set CTL element identifier of a CTL element id/info.

void snd_ctl_elem_info_set_numid (snd_ctl_elem_info_t *obj, unsigned int val)
 Set element numeric identifier of a CTL element id/info.

void snd_ctl_elem_info_set_interface (snd_ctl_elem_info_t *obj, snd_ctl_elem_iface_t val)
 Set interface part of CTL element identifier of a CTL element id/info.

void snd_ctl_elem_info_set_device (snd_ctl_elem_info_t *obj, unsigned int val)
 Set device part of CTL element identifier of a CTL element id/info.

void snd_ctl_elem_info_set_subdevice (snd_ctl_elem_info_t *obj, unsigned int val)
 Set subdevice part of CTL element identifier of a CTL element id/info.

void snd_ctl_elem_info_set_name (snd_ctl_elem_info_t *obj, const char *val)
 Set name part of CTL element identifier of a CTL element id/info.

void snd_ctl_elem_info_set_index (snd_ctl_elem_info_t *obj, unsigned int val)
 Set index part of CTL element identifier of a CTL element id/info.

size_t snd_ctl_elem_value_sizeof (void)
 get size of snd_ctl_elem_value_t

int snd_ctl_elem_value_malloc (snd_ctl_elem_value_t **ptr)
 allocate an invalid snd_ctl_elem_value_t using standard malloc

void snd_ctl_elem_value_free (snd_ctl_elem_value_t *obj)
 frees a previously allocated snd_ctl_elem_value_t

void snd_ctl_elem_value_clear (snd_ctl_elem_value_t *obj)
 clear given snd_ctl_elem_value_t object

void snd_ctl_elem_value_copy (snd_ctl_elem_value_t *dst, const snd_ctl_elem_value_t *src)
 copy one snd_ctl_elem_value_t to another

void snd_ctl_elem_value_get_id (const snd_ctl_elem_value_t *obj, snd_ctl_elem_id_t *ptr)
 Get CTL element identifier of a CTL element id/value.

unsigned int snd_ctl_elem_value_get_numid (const snd_ctl_elem_value_t *obj)
 Get element numeric identifier of a CTL element id/value.

snd_ctl_elem_iface_t snd_ctl_elem_value_get_interface (const snd_ctl_elem_value_t *obj)
 Get interface part of CTL element identifier of a CTL element id/value.

unsigned int snd_ctl_elem_value_get_device (const snd_ctl_elem_value_t *obj)
 Get device part of CTL element identifier of a CTL element id/value.

unsigned int snd_ctl_elem_value_get_subdevice (const snd_ctl_elem_value_t *obj)
 Get subdevice part of CTL element identifier of a CTL element id/value.

const char * snd_ctl_elem_value_get_name (const snd_ctl_elem_value_t *obj)
 Get name part of CTL element identifier of a CTL element id/value.

unsigned int snd_ctl_elem_value_get_index (const snd_ctl_elem_value_t *obj)
 Get index part of CTL element identifier of a CTL element id/value.

void snd_ctl_elem_value_set_id (snd_ctl_elem_value_t *obj, const snd_ctl_elem_id_t *ptr)
 Set CTL element identifier of a CTL element id/value.

void snd_ctl_elem_value_set_numid (snd_ctl_elem_value_t *obj, unsigned int val)
 Set element numeric identifier of a CTL element id/value.

void snd_ctl_elem_value_set_interface (snd_ctl_elem_value_t *obj, snd_ctl_elem_iface_t val)
 Set interface part of CTL element identifier of a CTL element id/value.

void snd_ctl_elem_value_set_device (snd_ctl_elem_value_t *obj, unsigned int val)
 Set device part of CTL element identifier of a CTL element id/value.

void snd_ctl_elem_value_set_subdevice (snd_ctl_elem_value_t *obj, unsigned int val)
 Set subdevice part of CTL element identifier of a CTL element id/value.

void snd_ctl_elem_value_set_name (snd_ctl_elem_value_t *obj, const char *val)
 Set name part of CTL element identifier of a CTL element id/value.

void snd_ctl_elem_value_set_index (snd_ctl_elem_value_t *obj, unsigned int val)
 Set index part of CTL element identifier of a CTL element id/value.

int snd_ctl_elem_value_get_boolean (const snd_ctl_elem_value_t *obj, unsigned int idx)
 Get value for an entry of a SND_CTL_ELEM_TYPE_BOOLEAN CTL element id/value.

long snd_ctl_elem_value_get_integer (const snd_ctl_elem_value_t *obj, unsigned int idx)
 Get value for an entry of a SND_CTL_ELEM_TYPE_INTEGER CTL element id/value.

long long snd_ctl_elem_value_get_integer64 (const snd_ctl_elem_value_t *obj, unsigned int idx)
 Get value for an entry of a SND_CTL_ELEM_TYPE_INTEGER64 CTL element id/value.

unsigned int snd_ctl_elem_value_get_enumerated (const snd_ctl_elem_value_t *obj, unsigned int idx)
 Get value for an entry of a SND_CTL_ELEM_TYPE_ENUMERATED CTL element id/value.

unsigned char snd_ctl_elem_value_get_byte (const snd_ctl_elem_value_t *obj, unsigned int idx)
 Get value for an entry of a SND_CTL_ELEM_TYPE_BYTES CTL element id/value.

void snd_ctl_elem_value_set_boolean (snd_ctl_elem_value_t *obj, unsigned int idx, long val)
 Set value for an entry of a SND_CTL_ELEM_TYPE_BOOLEAN CTL element id/value.

void snd_ctl_elem_value_set_integer (snd_ctl_elem_value_t *obj, unsigned int idx, long val)
 Set value for an entry of a SND_CTL_ELEM_TYPE_INTEGER CTL element id/value.

void snd_ctl_elem_value_set_integer64 (snd_ctl_elem_value_t *obj, unsigned int idx, long long val)
 Set value for an entry of a SND_CTL_ELEM_TYPE_INTEGER64 CTL element id/value.

void snd_ctl_elem_value_set_enumerated (snd_ctl_elem_value_t *obj, unsigned int idx, unsigned int val)
 Set value for an entry of a SND_CTL_ELEM_TYPE_ENUMERATED CTL element id/value.

void snd_ctl_elem_value_set_byte (snd_ctl_elem_value_t *obj, unsigned int idx, unsigned char val)
 Set value for an entry of a SND_CTL_ELEM_TYPE_BYTES CTL element id/value.

void snd_ctl_elem_set_bytes (snd_ctl_elem_value_t *obj, void *data, size_t size)
 Set CTL element SND_CTL_ELEM_TYPE_BYTES value.

const void * snd_ctl_elem_value_get_bytes (const snd_ctl_elem_value_t *obj)
 Get value for a SND_CTL_ELEM_TYPE_BYTES CTL element id/value.

void snd_ctl_elem_value_get_iec958 (const snd_ctl_elem_value_t *obj, snd_aes_iec958_t *ptr)
 Get value for a SND_CTL_ELEM_TYPE_IEC958 CTL element id/value.

void snd_ctl_elem_value_set_iec958 (snd_ctl_elem_value_t *obj, const snd_aes_iec958_t *ptr)
 Set value for a SND_CTL_ELEM_TYPE_IEC958 CTL element id/value.


Detailed Description

The control interface. See Control interface page for more details.

Define Documentation

#define SND_CONTROL_DLSYM_VERSION   _dlsym_control_001
 

dlsym version for interface entry callback

#define SND_CTL_ASYNC
 

Async notification (flag for open mode)

#define snd_ctl_card_info_alloca ptr   ) 
 

allocate an invalid snd_ctl_card_info_t using standard alloca

Parameters:
ptr returned pointer

#define snd_ctl_elem_id_alloca ptr   ) 
 

allocate an invalid snd_ctl_elem_id_t using standard alloca

Parameters:
ptr returned pointer

#define snd_ctl_elem_info_alloca ptr   ) 
 

allocate an invalid snd_ctl_elem_info_t using standard alloca

Parameters:
ptr returned pointer

#define snd_ctl_elem_list_alloca ptr   ) 
 

allocate an invalid snd_ctl_elem_list_t using standard alloca

Parameters:
ptr returned pointer

#define snd_ctl_elem_value_alloca ptr   ) 
 

allocate an invalid snd_ctl_elem_value_t using standard alloca

Parameters:
ptr returned pointer

#define snd_ctl_event_alloca ptr   ) 
 

allocate an invalid snd_ctl_event_t using standard alloca

Parameters:
ptr returned pointer

#define SND_CTL_EVENT_MASK_ADD
 

Element has been added

#define SND_CTL_EVENT_MASK_INFO
 

Element info has been changed

#define SND_CTL_EVENT_MASK_REMOVE
 

Element has been removed (Warning: test this first and if set don't test the other masks)

#define SND_CTL_EVENT_MASK_VALUE
 

Element value has been changed

#define SND_CTL_NAME_CAPTURE   "Capture "
 

CTL name helper

#define SND_CTL_NAME_IEC958 expl,
direction,
what   )     "IEC958 " expl SND_CTL_NAME_##direction SND_CTL_NAME_IEC958_##what
 

Element name for IEC958 (S/PDIF)

#define SND_CTL_NAME_IEC958_CON_MASK   "Con Mask"
 

CTL name helper

#define SND_CTL_NAME_IEC958_DEFAULT   "Default"
 

CTL name helper

#define SND_CTL_NAME_IEC958_MASK   "Mask"
 

CTL name helper

#define SND_CTL_NAME_IEC958_NONE   ""
 

CTL name helper

#define SND_CTL_NAME_IEC958_PCM_STREAM   "PCM Stream"
 

CTL name helper

#define SND_CTL_NAME_IEC958_PRO_MASK   "Pro Mask"
 

CTL name helper

#define SND_CTL_NAME_IEC958_SWITCH   "Switch"
 

CTL name helper

#define SND_CTL_NAME_IEC958_VOLUME   "Volume"
 

CTL name helper

#define SND_CTL_NAME_NONE   ""
 

CTL name helper

#define SND_CTL_NAME_PLAYBACK   "Playback "
 

CTL name helper

#define SND_CTL_NONBLOCK
 

Non blocking mode (flag for open mode)

#define SND_CTL_POWER_D0   0x0000
 

ACPI/PCI Power State D0

#define SND_CTL_POWER_D1   0x0100
 

ACPI/PCI Power State D1

#define SND_CTL_POWER_D2   0x0200
 

ACPI/PCI Power State D2

#define SND_CTL_POWER_D3   0x0300
 

ACPI/PCI Power State D3

#define SND_CTL_POWER_D3cold   (SND_CTL_POWER_D3|0x0001)
 

ACPI/PCI Power State D3cold

#define SND_CTL_POWER_D3hot   (SND_CTL_POWER_D3|0x0000)
 

ACPI/PCI Power State D3hot

#define SND_CTL_POWER_MASK   0xff00
 

Mask for the major Power State identifier

#define SND_CTL_READONLY
 

Read only (flag for open mode)

#define SND_SCTL_NOFREE   0x0001
 

Don't destroy the ctl handle when close


Typedef Documentation

typedef struct snd_aes_iec958 snd_aes_iec958_t
 

IEC958 structure

typedef struct _snd_ctl_card_info snd_ctl_card_info_t
 

CTL card info container

typedef struct _snd_ctl_elem_id snd_ctl_elem_id_t
 

CTL element identifier container

typedef enum _snd_ctl_elem_iface snd_ctl_elem_iface_t
 

CTL related interface

typedef struct _snd_ctl_elem_info snd_ctl_elem_info_t
 

CTL element info container

typedef struct _snd_ctl_elem_list snd_ctl_elem_list_t
 

CTL element identifier list container

typedef enum _snd_ctl_elem_type snd_ctl_elem_type_t
 

CTL element type

typedef struct _snd_ctl_elem_value snd_ctl_elem_value_t
 

CTL element value container

typedef struct _snd_ctl_event snd_ctl_event_t
 

CTL event container

typedef enum _snd_ctl_event_type snd_ctl_event_type_t
 

Event class

typedef struct _snd_ctl snd_ctl_t
 

CTL handle

typedef enum _snd_ctl_type snd_ctl_type_t
 

CTL type

typedef struct _snd_sctl snd_sctl_t
 

SCTL type


Enumeration Type Documentation

enum _snd_ctl_elem_iface
 

CTL related interface

Enumeration values:
SND_CTL_ELEM_IFACE_CARD  Card level
SND_CTL_ELEM_IFACE_HWDEP  Hardware dependent device
SND_CTL_ELEM_IFACE_MIXER  Mixer
SND_CTL_ELEM_IFACE_PCM  PCM
SND_CTL_ELEM_IFACE_RAWMIDI  RawMidi
SND_CTL_ELEM_IFACE_TIMER  Timer
SND_CTL_ELEM_IFACE_SEQUENCER  Sequencer

enum _snd_ctl_elem_type
 

CTL element type

Enumeration values:
SND_CTL_ELEM_TYPE_NONE  Invalid type
SND_CTL_ELEM_TYPE_BOOLEAN  Boolean contents
SND_CTL_ELEM_TYPE_INTEGER  Integer contents
SND_CTL_ELEM_TYPE_ENUMERATED  Enumerated contents
SND_CTL_ELEM_TYPE_BYTES  Bytes contents
SND_CTL_ELEM_TYPE_IEC958  IEC958 (S/PDIF) setting content
SND_CTL_ELEM_TYPE_INTEGER64  64-bit integer contents

enum _snd_ctl_event_type
 

Event class

Enumeration values:
SND_CTL_EVENT_ELEM  Elements related event

enum _snd_ctl_type
 

CTL type

Enumeration values:
SND_CTL_TYPE_HW  Kernel level CTL
SND_CTL_TYPE_SHM  Shared memory client CTL
SND_CTL_TYPE_INET  INET client CTL (not yet implemented)


Function Documentation

int snd_async_add_ctl_handler snd_async_handler_t **  handler,
snd_ctl_t ctl,
snd_async_callback_t  callback,
void *  private_data
 

Add an async handler for a CTL.

Parameters:
handler Returned handler handle
ctl CTL handle
callback Callback function
private_data Callback private data
Returns:
0 otherwise a negative error code on failure

snd_ctl_t* snd_async_handler_get_ctl snd_async_handler_t handler  ) 
 

Return CTL handle related to an async handler.

Parameters:
handler Async handler handle
Returns:
CTL handle

int snd_card_get_index const char *  string  ) 
 

Convert card string to an integer value.

Parameters:
string String containing card identifier
Returns:
zero if success, otherwise a negative error code
The accepted format is an integer value in ASCII representation or the card identifier (the id parameter for sound-card drivers).

int snd_card_get_longname int  card,
char **  name
 

Obtain the card long name.

Parameters:
card Card number
name Result - card long name corresponding to card number
Returns:
zero if success, otherwise a negative error code

int snd_card_get_name int  card,
char **  name
 

Obtain the card name.

Parameters:
card Card number
name Result - card name corresponding to card number
Returns:
zero if success, otherwise a negative error code

int snd_card_load int  card  ) 
 

Try to load the driver for a card.

Parameters:
card Card number.
Returns:
1 if driver is present, zero if driver is not present

int snd_card_next int *  rcard  ) 
 

Try to determine the next card.

Parameters:
rcard pointer to card number
Returns:
zero if success, otherwise a negative error code
Tries to determine the next card from given card number. If card number is -1, then the first available card is returned. If the result card number is -1, no more cards are available.

int snd_ctl_card_info snd_ctl_t ctl,
snd_ctl_card_info_t info
 

Get card related information.

Parameters:
ctl CTL handle
info Card info pointer
Returns:
0 on success otherwise a negative error code

void snd_ctl_card_info_clear snd_ctl_card_info_t obj  ) 
 

clear given snd_ctl_card_info_t object

Parameters:
obj pointer to object to clear

void snd_ctl_card_info_copy snd_ctl_card_info_t dst,
const snd_ctl_card_info_t src
 

copy one snd_ctl_card_info_t to another

Parameters:
dst pointer to destination
src pointer to source

void snd_ctl_card_info_free snd_ctl_card_info_t obj  ) 
 

frees a previously allocated snd_ctl_card_info_t

Parameters:
pointer to object to free

int snd_ctl_card_info_get_card const snd_ctl_card_info_t obj  ) 
 

Get card number from a CTL card info.

Parameters:
obj CTL card info
Returns:
card number

const char* snd_ctl_card_info_get_components const snd_ctl_card_info_t obj  ) 
 

Get card component list from a CTL card info.

Parameters:
obj CTL card info
Returns:
card mixer identifier

const char* snd_ctl_card_info_get_driver const snd_ctl_card_info_t obj  ) 
 

Get card driver name from a CTL card info.

Parameters:
obj CTL card info
Returns:
card driver name

const char* snd_ctl_card_info_get_id const snd_ctl_card_info_t obj  ) 
 

Get card identifier from a CTL card info.

Parameters:
obj CTL card info
Returns:
card identifier

const char* snd_ctl_card_info_get_longname const snd_ctl_card_info_t obj  ) 
 

Get card long name from a CTL card info.

Parameters:
obj CTL card info
Returns:
card long name

const char* snd_ctl_card_info_get_mixername const snd_ctl_card_info_t obj  ) 
 

Get card mixer name from a CTL card info.

Parameters:
obj CTL card info
Returns:
card mixer name

const char* snd_ctl_card_info_get_name const snd_ctl_card_info_t obj  ) 
 

Get card name from a CTL card info.

Parameters:
obj CTL card info
Returns:
card name

int snd_ctl_card_info_malloc snd_ctl_card_info_t **  ptr  ) 
 

allocate an invalid snd_ctl_card_info_t using standard malloc

Parameters:
ptr returned pointer
Returns:
0 on success otherwise negative error code

size_t snd_ctl_card_info_sizeof void   ) 
 

get size of snd_ctl_card_info_t

Returns:
size in bytes

int snd_ctl_close snd_ctl_t ctl  ) 
 

close CTL handle

Parameters:
ctl CTL handle
Returns:
0 on success otherwise a negative error code
Closes the specified CTL handle and frees all associated resources.

void snd_ctl_elem_id_clear snd_ctl_elem_id_t obj  ) 
 

clear given snd_ctl_elem_id_t object

Parameters:
obj pointer to object to clear

void snd_ctl_elem_id_copy snd_ctl_elem_id_t dst,
const snd_ctl_elem_id_t src
 

copy one snd_ctl_elem_id_t to another

Parameters:
dst pointer to destination
src pointer to source

void snd_ctl_elem_id_free snd_ctl_elem_id_t obj  ) 
 

frees a previously allocated snd_ctl_elem_id_t

Parameters:
pointer to object to free

unsigned int snd_ctl_elem_id_get_device const snd_ctl_elem_id_t obj  ) 
 

Get device part of a CTL element identifier.

Parameters:
obj CTL element identifier
Returns:
CTL element related device

unsigned int snd_ctl_elem_id_get_index const snd_ctl_elem_id_t obj  ) 
 

Get index part of a CTL element identifier.

Parameters:
obj CTL element identifier
Returns:
CTL element index

snd_ctl_elem_iface_t snd_ctl_elem_id_get_interface const snd_ctl_elem_id_t obj  ) 
 

Get interface part of a CTL element identifier.

Parameters:
obj CTL element identifier
Returns:
CTL element related interface

const char* snd_ctl_elem_id_get_name const snd_ctl_elem_id_t obj  ) 
 

Get name part of a CTL element identifier.

Parameters:
obj CTL element identifier
Returns:
CTL element name

unsigned int snd_ctl_elem_id_get_numid const snd_ctl_elem_id_t obj  ) 
 

Get numeric identifier from a CTL element identifier.

Parameters:
obj CTL element identifier
Returns:
CTL element numeric identifier

unsigned int snd_ctl_elem_id_get_subdevice const snd_ctl_elem_id_t obj  ) 
 

Get subdevice part of a CTL element identifier.

Parameters:
obj CTL element identifier
Returns:
CTL element related subdevice

int snd_ctl_elem_id_malloc snd_ctl_elem_id_t **  ptr  ) 
 

allocate an invalid snd_ctl_elem_id_t using standard malloc

Parameters:
ptr returned pointer
Returns:
0 on success otherwise negative error code

void snd_ctl_elem_id_set_device snd_ctl_elem_id_t obj,
unsigned int  val
 

Set device part for a CTL element identifier.

Parameters:
obj CTL element identifier
val CTL element related device

void snd_ctl_elem_id_set_index snd_ctl_elem_id_t obj,
unsigned int  val
 

Set index part for a CTL element identifier.

Parameters:
obj CTL element identifier
val CTL element index

void snd_ctl_elem_id_set_interface snd_ctl_elem_id_t obj,
snd_ctl_elem_iface_t  val
 

Set interface part for a CTL element identifier.

Parameters:
obj CTL element identifier
val CTL element related interface

void snd_ctl_elem_id_set_name snd_ctl_elem_id_t obj,
const char *  val
 

Set name part for a CTL element identifier.

Parameters:
obj CTL element identifier
val CTL element name

void snd_ctl_elem_id_set_numid snd_ctl_elem_id_t obj,
unsigned int  val
 

Set numeric identifier for a CTL element identifier.

Parameters:
obj CTL element identifier
val CTL element numeric identifier

void snd_ctl_elem_id_set_subdevice snd_ctl_elem_id_t obj,
unsigned int  val
 

Set subdevice part for a CTL element identifier.

Parameters:
obj CTL element identifier
val CTL element related subdevice

size_t snd_ctl_elem_id_sizeof void   ) 
 

get size of snd_ctl_elem_id_t

Returns:
size in bytes

const char* snd_ctl_elem_iface_name snd_ctl_elem_iface_t  iface  ) 
 

get name of a CTL element related interface

Parameters:
iface CTL element related interface
Returns:
ascii name of CTL element related interface

int snd_ctl_elem_info snd_ctl_t ctl,
snd_ctl_elem_info_t info
 

Get CTL element information.

Parameters:
ctl CTL handle
info CTL element id/information pointer
Returns:
0 on success otherwise a negative error code

void snd_ctl_elem_info_clear snd_ctl_elem_info_t obj  ) 
 

clear given snd_ctl_elem_info_t object

Parameters:
obj pointer to object to clear

void snd_ctl_elem_info_copy snd_ctl_elem_info_t dst,
const snd_ctl_elem_info_t src
 

copy one snd_ctl_elem_info_t to another

Parameters:
dst pointer to destination
src pointer to source

void snd_ctl_elem_info_free snd_ctl_elem_info_t obj  ) 
 

frees a previously allocated snd_ctl_elem_info_t

Parameters:
pointer to object to free

unsigned int snd_ctl_elem_info_get_count const snd_ctl_elem_info_t obj  ) 
 

Get number of value entries from a CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
value entries count

unsigned int snd_ctl_elem_info_get_device const snd_ctl_elem_info_t obj  ) 
 

Get device part of CTL element identifier of a CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
device part of element identifier

int snd_ctl_elem_info_get_dimension const snd_ctl_elem_info_t obj,
unsigned int  idx
 

Get specified of dimension width for given element.

Parameters:
obj CTL element id/info
Returns:
zero value if no dimension width is defined, otherwise positive value with with of specified dimension

int snd_ctl_elem_info_get_dimensions const snd_ctl_elem_info_t obj  ) 
 

Get count of dimensions for given element.

Parameters:
obj CTL element id/info
Returns:
zero value if no dimensions are defined, otherwise positive value with count of dimensions

void snd_ctl_elem_info_get_id const snd_ctl_elem_info_t obj,
snd_ctl_elem_id_t ptr
 

Get CTL element identifier of a CTL element id/info.

Parameters:
obj CTL element id/info
ptr Pointer to returned CTL element identifier

unsigned int snd_ctl_elem_info_get_index const snd_ctl_elem_info_t obj  ) 
 

Get index part of CTL element identifier of a CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
index part of element identifier

snd_ctl_elem_iface_t snd_ctl_elem_info_get_interface const snd_ctl_elem_info_t obj  ) 
 

Get interface part of CTL element identifier of a CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
interface part of element identifier

const char* snd_ctl_elem_info_get_item_name const snd_ctl_elem_info_t obj  ) 
 

Get name for selected item in a SND_CTL_ELEM_TYPE_ENUMERATED CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
name of chosen item

unsigned int snd_ctl_elem_info_get_items const snd_ctl_elem_info_t obj  ) 
 

Get number of items available from a SND_CTL_ELEM_TYPE_ENUMERATED CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
items count

long snd_ctl_elem_info_get_max const snd_ctl_elem_info_t obj  ) 
 

Get maximum value from a SND_CTL_ELEM_TYPE_INTEGER CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
Maximum value

long long snd_ctl_elem_info_get_max64 const snd_ctl_elem_info_t obj  ) 
 

Get maximum value from a SND_CTL_ELEM_TYPE_INTEGER64 CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
Maximum value

long snd_ctl_elem_info_get_min const snd_ctl_elem_info_t obj  ) 
 

Get minimum value from a SND_CTL_ELEM_TYPE_INTEGER CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
Minimum value

long long snd_ctl_elem_info_get_min64 const snd_ctl_elem_info_t obj  ) 
 

Get minimum value from a SND_CTL_ELEM_TYPE_INTEGER64 CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
Minimum value

const char* snd_ctl_elem_info_get_name const snd_ctl_elem_info_t obj  ) 
 

Get name part of CTL element identifier of a CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
name part of element identifier

unsigned int snd_ctl_elem_info_get_numid const snd_ctl_elem_info_t obj  ) 
 

Get element numeric identifier of a CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
element numeric identifier

pid_t snd_ctl_elem_info_get_owner const snd_ctl_elem_info_t obj  ) 
 

Get owner of a locked element.

Parameters:
obj CTL element id/info
Returns:
value entries count

long snd_ctl_elem_info_get_step const snd_ctl_elem_info_t obj  ) 
 

Get value step from a SND_CTL_ELEM_TYPE_INTEGER CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
Step

long long snd_ctl_elem_info_get_step64 const snd_ctl_elem_info_t obj  ) 
 

Get value step from a SND_CTL_ELEM_TYPE_INTEGER64 CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
Step

unsigned int snd_ctl_elem_info_get_subdevice const snd_ctl_elem_info_t obj  ) 
 

Get subdevice part of CTL element identifier of a CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
subdevice part of element identifier

snd_ctl_elem_type_t snd_ctl_elem_info_get_type const snd_ctl_elem_info_t obj  ) 
 

Get type from a CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
CTL element content type

int snd_ctl_elem_info_is_inactive const snd_ctl_elem_info_t obj  ) 
 

Get info about status from a CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
0 if element value is not active, 1 if is active

int snd_ctl_elem_info_is_locked const snd_ctl_elem_info_t obj  ) 
 

Get info whether an element is locked.

Parameters:
obj CTL element id/info
Returns:
0 if element value is currently changeable, 1 if it's locked by another application

int snd_ctl_elem_info_is_owner const snd_ctl_elem_info_t obj  ) 
 

Get info if I own an element.

Parameters:
obj CTL element id/info
Returns:
0 if element value is currently changeable, 1 if it's locked by another application

int snd_ctl_elem_info_is_readable const snd_ctl_elem_info_t obj  ) 
 

Get info about readability from a CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
0 if element is not readable, 1 if element is readable

int snd_ctl_elem_info_is_volatile const snd_ctl_elem_info_t obj  ) 
 

Get info about notification feasibility from a CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
0 if all element value changes are notified to subscribed applications, 1 otherwise

int snd_ctl_elem_info_is_writable const snd_ctl_elem_info_t obj  ) 
 

Get info about writability from a CTL element id/info.

Parameters:
obj CTL element id/info
Returns:
0 if element is not writable, 1 if element is not writable

int snd_ctl_elem_info_malloc snd_ctl_elem_info_t **  ptr  ) 
 

allocate an invalid snd_ctl_elem_info_t using standard malloc

Parameters:
ptr returned pointer
Returns:
0 on success otherwise negative error code

void snd_ctl_elem_info_set_device snd_ctl_elem_info_t obj,
unsigned int  val
 

Set device part of CTL element identifier of a CTL element id/info.

Parameters:
obj CTL element id/info
val device part of element identifier

void snd_ctl_elem_info_set_id snd_ctl_elem_info_t obj,
const snd_ctl_elem_id_t ptr
 

Set CTL element identifier of a CTL element id/info.

Parameters:
obj CTL element id/info
ptr CTL element identifier

void snd_ctl_elem_info_set_index snd_ctl_elem_info_t obj,
unsigned int  val
 

Set index part of CTL element identifier of a CTL element id/info.

Parameters:
obj CTL element id/info
val index part of element identifier

void snd_ctl_elem_info_set_interface snd_ctl_elem_info_t obj,
snd_ctl_elem_iface_t  val
 

Set interface part of CTL element identifier of a CTL element id/info.

Parameters:
obj CTL element id/info
val interface part of element identifier

void snd_ctl_elem_info_set_item snd_ctl_elem_info_t obj,
unsigned int  val
 

Select item in a SND_CTL_ELEM_TYPE_ENUMERATED CTL element id/info.

Parameters:
obj CTL element id/info
val item number

void snd_ctl_elem_info_set_name snd_ctl_elem_info_t obj,
const char *  val
 

Set name part of CTL element identifier of a CTL element id/info.

Parameters:
obj CTL element id/info
val name part of element identifier

void snd_ctl_elem_info_set_numid snd_ctl_elem_info_t obj,
unsigned int  val
 

Set element numeric identifier of a CTL element id/info.

Parameters:
obj CTL element id/info
val element numeric identifier

void snd_ctl_elem_info_set_subdevice snd_ctl_elem_info_t obj,
unsigned int  val
 

Set subdevice part of CTL element identifier of a CTL element id/info.

Parameters:
obj CTL element id/info
val subdevice part of element identifier

size_t snd_ctl_elem_info_sizeof void   ) 
 

get size of snd_ctl_elem_info_t

Returns:
size in bytes

int snd_ctl_elem_list snd_ctl_t ctl,
snd_ctl_elem_list_t list
 

Get a list of element identifiers.

Parameters:
ctl CTL handle
list CTL element identifiers list pointer
Returns:
0 on success otherwise a negative error code

int snd_ctl_elem_list_alloc_space snd_ctl_elem_list_t obj,
unsigned int  entries
 

allocate space for CTL element identifiers list

Parameters:
obj CTL element identifiers list
entries Entries to allocate
Returns:
0 on success otherwise a negative error code

void snd_ctl_elem_list_clear snd_ctl_elem_list_t obj  ) 
 

clear given snd_ctl_elem_list_t object

Parameters:
obj pointer to object to clear

void snd_ctl_elem_list_copy snd_ctl_elem_list_t dst,
const snd_ctl_elem_list_t src
 

copy one snd_ctl_elem_list_t to another

Parameters:
dst pointer to destination
src pointer to source

void snd_ctl_elem_list_free snd_ctl_elem_list_t obj  ) 
 

frees a previously allocated snd_ctl_elem_list_t

Parameters:
pointer to object to free

void snd_ctl_elem_list_free_space snd_ctl_elem_list_t obj  ) 
 

free previously allocated space for CTL element identifiers list

Parameters:
obj CTL element identifiers list

unsigned int snd_ctl_elem_list_get_count const snd_ctl_elem_list_t obj  ) 
 

Get total count of elements present in CTL device (information present in every filled CTL element identifiers list).

Parameters:
obj CTL element identifier list
Returns:
total number of elements

unsigned int snd_ctl_elem_list_get_device const snd_ctl_elem_list_t obj,
unsigned int  idx
 

Get device part of CTL element identifier for an entry of a CTL element identifiers list.

Parameters:
obj CTL element identifier list
idx Index of entry
Returns:
CTL element related device

void snd_ctl_elem_list_get_id const snd_ctl_elem_list_t obj,
unsigned int  idx,
snd_ctl_elem_id_t ptr
 

Get CTL element identifier for an entry of a CTL element identifiers list.

Parameters:
obj CTL element identifier list
idx Index of entry
ptr Pointer to returned CTL element identifier

unsigned int snd_ctl_elem_list_get_index const snd_ctl_elem_list_t obj,
unsigned int  idx
 

Get index part of CTL element identifier for an entry of a CTL element identifiers list.

Parameters:
obj CTL element identifier list
idx Index of entry
Returns:
CTL element index

snd_ctl_elem_iface_t snd_ctl_elem_list_get_interface const snd_ctl_elem_list_t obj,
unsigned int  idx
 

Get interface part of CTL element identifier for an entry of a CTL element identifiers list.

Parameters:
obj CTL element identifier list
idx Index of entry
Returns:
CTL element related interface

const char* snd_ctl_elem_list_get_name const snd_ctl_elem_list_t obj,
unsigned int  idx
 

Get name part of CTL element identifier for an entry of a CTL element identifiers list.

Parameters:
obj CTL element identifier list
idx Index of entry
Returns:
CTL element name

unsigned int snd_ctl_elem_list_get_numid const snd_ctl_elem_list_t obj,
unsigned int  idx
 

Get CTL element numeric identifier for an entry of a CTL element identifiers list.

Parameters:
obj CTL element identifier list
idx Index of entry
Returns:
CTL element numeric identifier

unsigned int snd_ctl_elem_list_get_subdevice const snd_ctl_elem_list_t obj,
unsigned int  idx
 

Get subdevice part of CTL element identifier for an entry of a CTL element identifiers list.

Parameters:
obj CTL element identifier list
idx Index of entry
Returns:
CTL element related subdevice

unsigned int snd_ctl_elem_list_get_used const snd_ctl_elem_list_t obj  ) 
 

Get number of used entries in CTL element identifiers list.

Parameters:
obj CTL element identifier list
Returns:
number of used entries

int snd_ctl_elem_list_malloc snd_ctl_elem_list_t **  ptr  ) 
 

allocate an invalid snd_ctl_elem_list_t using standard malloc

Parameters:
ptr returned pointer
Returns:
0 on success otherwise negative error code

void snd_ctl_elem_list_set_offset snd_ctl_elem_list_t obj,
unsigned int  val
 

Set index of first wanted CTL element identifier in a CTL element identifiers list.

Parameters:
obj CTL element identifiers list
val index of CTL element to put at position 0 of list

size_t snd_ctl_elem_list_sizeof void   ) 
 

get size of snd_ctl_elem_list_t

Returns:
size in bytes

int snd_ctl_elem_lock snd_ctl_t ctl,
snd_ctl_elem_id_t id
 

Lock CTL element.

Parameters:
ctl CTL handle
control CTL element id pointer
Returns:
0 on success otherwise a negative error code

int snd_ctl_elem_read snd_ctl_t ctl,
snd_ctl_elem_value_t control
 

Get CTL element value.

Parameters:
ctl CTL handle
control CTL element id/value pointer
Returns:
0 on success otherwise a negative error code

void snd_ctl_elem_set_bytes snd_ctl_elem_value_t obj,
void *  data,
size_t  size
 

Set CTL element SND_CTL_ELEM_TYPE_BYTES value.

Parameters:
ctl CTL handle
data Bytes value
size Size in bytes

const char* snd_ctl_elem_type_name snd_ctl_elem_type_t  type  ) 
 

get name of a CTL element type

Parameters:
type CTL element type
Returns:
ascii name of CTL element type

int snd_ctl_elem_unlock snd_ctl_t ctl,
snd_ctl_elem_id_t id
 

Unlock CTL element.

Parameters:
ctl CTL handle
control CTL element id pointer
Returns:
0 on success otherwise a negative error code

void snd_ctl_elem_value_clear snd_ctl_elem_value_t obj  ) 
 

clear given snd_ctl_elem_value_t object

Parameters:
obj pointer to object to clear

void snd_ctl_elem_value_copy snd_ctl_elem_value_t dst,
const snd_ctl_elem_value_t src
 

copy one snd_ctl_elem_value_t to another

Parameters:
dst pointer to destination
src pointer to source

void snd_ctl_elem_value_free snd_ctl_elem_value_t obj  ) 
 

frees a previously allocated snd_ctl_elem_value_t

Parameters:
pointer to object to free

int snd_ctl_elem_value_get_boolean const snd_ctl_elem_value_t obj,
unsigned int  idx
 

Get value for an entry of a SND_CTL_ELEM_TYPE_BOOLEAN CTL element id/value.

Parameters:
obj CTL element id/value
idx Entry index
Returns:
value for the entry

unsigned char snd_ctl_elem_value_get_byte const snd_ctl_elem_value_t obj,
unsigned int  idx
 

Get value for an entry of a SND_CTL_ELEM_TYPE_BYTES CTL element id/value.

Parameters:
obj CTL element id/value
idx Entry index
Returns:
value for the entry

const void* snd_ctl_elem_value_get_bytes const snd_ctl_elem_value_t obj  ) 
 

Get value for a SND_CTL_ELEM_TYPE_BYTES CTL element id/value.

Parameters:
obj CTL element id/value
Returns:
Pointer to CTL element value

unsigned int snd_ctl_elem_value_get_device const snd_ctl_elem_value_t obj  ) 
 

Get device part of CTL element identifier of a CTL element id/value.

Parameters:
obj CTL element id/value
Returns:
device part of element identifier

unsigned int snd_ctl_elem_value_get_enumerated const snd_ctl_elem_value_t obj,
unsigned int  idx
 

Get value for an entry of a SND_CTL_ELEM_TYPE_ENUMERATED CTL element id/value.

Parameters:
obj CTL element id/value
idx Entry index
Returns:
value for the entry

void snd_ctl_elem_value_get_id const snd_ctl_elem_value_t obj,
snd_ctl_elem_id_t ptr
 

Get CTL element identifier of a CTL element id/value.

Parameters:
obj CTL element id/value
ptr Pointer to returned CTL element identifier

void snd_ctl_elem_value_get_iec958 const snd_ctl_elem_value_t obj,
snd_aes_iec958_t ptr
 

Get value for a SND_CTL_ELEM_TYPE_IEC958 CTL element id/value.

Parameters:
obj CTL element id/value
Pointer to returned CTL element value

unsigned int snd_ctl_elem_value_get_index const snd_ctl_elem_value_t obj  ) 
 

Get index part of CTL element identifier of a CTL element id/value.

Parameters:
obj CTL element id/value
Returns:
index part of element identifier

long snd_ctl_elem_value_get_integer const snd_ctl_elem_value_t obj,
unsigned int  idx
 

Get value for an entry of a SND_CTL_ELEM_TYPE_INTEGER CTL element id/value.

Parameters:
obj CTL element id/value
idx Entry index
Returns:
value for the entry

long long snd_ctl_elem_value_get_integer64 const snd_ctl_elem_value_t obj,
unsigned int  idx
 

Get value for an entry of a SND_CTL_ELEM_TYPE_INTEGER64 CTL element id/value.

Parameters:
obj CTL element id/value
idx Entry index
Returns:
value for the entry

snd_ctl_elem_iface_t snd_ctl_elem_value_get_interface const snd_ctl_elem_value_t obj  ) 
 

Get interface part of CTL element identifier of a CTL element id/value.

Parameters:
obj CTL element id/value
Returns:
interface part of element identifier

const char* snd_ctl_elem_value_get_name const snd_ctl_elem_value_t obj  ) 
 

Get name part of CTL element identifier of a CTL element id/value.

Parameters:
obj CTL element id/value
Returns:
name part of element identifier

unsigned int snd_ctl_elem_value_get_numid const snd_ctl_elem_value_t obj  ) 
 

Get element numeric identifier of a CTL element id/value.

Parameters:
obj CTL element id/value
Returns:
element numeric identifier

unsigned int snd_ctl_elem_value_get_subdevice const snd_ctl_elem_value_t obj  ) 
 

Get subdevice part of CTL element identifier of a CTL element id/value.

Parameters:
obj CTL element id/value
Returns:
subdevice part of element identifier

int snd_ctl_elem_value_malloc snd_ctl_elem_value_t **  ptr  ) 
 

allocate an invalid snd_ctl_elem_value_t using standard malloc

Parameters:
ptr returned pointer
Returns:
0 on success otherwise negative error code

void snd_ctl_elem_value_set_boolean snd_ctl_elem_value_t obj,
unsigned int  idx,
long  val
 

Set value for an entry of a SND_CTL_ELEM_TYPE_BOOLEAN CTL element id/value.

Parameters:
obj CTL element id/value
idx Entry index
val value for the entry

void snd_ctl_elem_value_set_byte snd_ctl_elem_value_t obj,
unsigned int  idx,
unsigned char  val
 

Set value for an entry of a SND_CTL_ELEM_TYPE_BYTES CTL element id/value.

Parameters:
obj CTL element id/value
idx Entry index
val value for the entry

void snd_ctl_elem_value_set_device snd_ctl_elem_value_t obj,
unsigned int  val
 

Set device part of CTL element identifier of a CTL element id/value.

Parameters:
obj CTL element id/value
val device part of element identifier

void snd_ctl_elem_value_set_enumerated snd_ctl_elem_value_t obj,
unsigned int  idx,
unsigned int  val
 

Set value for an entry of a SND_CTL_ELEM_TYPE_ENUMERATED CTL element id/value.

Parameters:
obj CTL element id/value
idx Entry index
val value for the entry

void snd_ctl_elem_value_set_id snd_ctl_elem_value_t obj,
const snd_ctl_elem_id_t ptr
 

Set CTL element identifier of a CTL element id/value.

Parameters:
obj CTL element id/value
ptr CTL element identifier

void snd_ctl_elem_value_set_iec958 snd_ctl_elem_value_t obj,
const snd_aes_iec958_t ptr
 

Set value for a SND_CTL_ELEM_TYPE_IEC958 CTL element id/value.

Parameters:
obj CTL element id/value
Pointer to CTL element value

void snd_ctl_elem_value_set_index snd_ctl_elem_value_t obj,
unsigned int  val
 

Set index part of CTL element identifier of a CTL element id/value.

Parameters:
obj CTL element id/value
val index part of element identifier

void snd_ctl_elem_value_set_integer snd_ctl_elem_value_t obj,
unsigned int  idx,
long  val
 

Set value for an entry of a SND_CTL_ELEM_TYPE_INTEGER CTL element id/value.

Parameters:
obj CTL element id/value
idx Entry index
val value for the entry

void snd_ctl_elem_value_set_integer64 snd_ctl_elem_value_t obj,
unsigned int  idx,
long long  val
 

Set value for an entry of a SND_CTL_ELEM_TYPE_INTEGER64 CTL element id/value.

Parameters:
obj CTL element id/value
idx Entry index
val value for the entry

void snd_ctl_elem_value_set_interface snd_ctl_elem_value_t obj,
snd_ctl_elem_iface_t  val
 

Set interface part of CTL element identifier of a CTL element id/value.

Parameters:
obj CTL element id/value
val interface part of element identifier

void snd_ctl_elem_value_set_name snd_ctl_elem_value_t obj,
const char *  val
 

Set name part of CTL element identifier of a CTL element id/value.

Parameters:
obj CTL element id/value
val name part of element identifier

void snd_ctl_elem_value_set_numid snd_ctl_elem_value_t obj,
unsigned int  val
 

Set element numeric identifier of a CTL element id/value.

Parameters:
obj CTL element id/value
val element numeric identifier

void snd_ctl_elem_value_set_subdevice snd_ctl_elem_value_t obj,
unsigned int  val
 

Set subdevice part of CTL element identifier of a CTL element id/value.

Parameters:
obj CTL element id/value
val subdevice part of element identifier

size_t snd_ctl_elem_value_sizeof void   ) 
 

get size of snd_ctl_elem_value_t

Returns:
size in bytes

int snd_ctl_elem_write snd_ctl_t ctl,
snd_ctl_elem_value_t control
 

Set CTL element value.

Parameters:
ctl CTL handle
control CTL element id/value pointer
Returns:
0 on success otherwise a negative error code

void snd_ctl_event_clear snd_ctl_event_t obj  ) 
 

clear given snd_ctl_event_t object

Parameters:
obj pointer to object to clear

void snd_ctl_event_copy snd_ctl_event_t dst,
const snd_ctl_event_t src
 

copy one snd_ctl_event_t to another

Parameters:
dst pointer to destination
src pointer to source

unsigned int snd_ctl_event_elem_get_device const snd_ctl_event_t obj  ) 
 

Get device part of CTL element identifier for an element related event.

Parameters:
obj CTL event
Returns:
device part of element identifier

void snd_ctl_event_elem_get_id const snd_ctl_event_t obj,
snd_ctl_elem_id_t ptr
 

Get CTL element identifier for an element related event.

Parameters:
obj CTL event
ptr Pointer to returned CTL element identifier

unsigned int snd_ctl_event_elem_get_index const snd_ctl_event_t obj  ) 
 

Get index part of CTL element identifier for an element related event.

Parameters:
obj CTL event
Returns:
index part of element identifier

snd_ctl_elem_iface_t snd_ctl_event_elem_get_interface const snd_ctl_event_t obj  ) 
 

Get interface part of CTL element identifier for an element related event.

Parameters:
obj CTL event
Returns:
interface part of element identifier

unsigned int snd_ctl_event_elem_get_mask const snd_ctl_event_t obj  ) 
 

Get event mask for an element related event.

Parameters:
obj CTL event
Returns:
event mask for element related event

const char* snd_ctl_event_elem_get_name const snd_ctl_event_t obj  ) 
 

Get name part of CTL element identifier for an element related event.

Parameters:
obj CTL event
Returns:
name part of element identifier

unsigned int snd_ctl_event_elem_get_numid const snd_ctl_event_t obj  ) 
 

Get element numeric identifier for an element related event.

Parameters:
obj CTL event
Returns:
element numeric identifier

unsigned int snd_ctl_event_elem_get_subdevice const snd_ctl_event_t obj  ) 
 

Get subdevice part of CTL element identifier for an element related event.

Parameters:
obj CTL event
Returns:
subdevice part of element identifier

void snd_ctl_event_free snd_ctl_event_t obj  ) 
 

frees a previously allocated snd_ctl_event_t

Parameters:
pointer to object to free

snd_ctl_event_type_t snd_ctl_event_get_type const snd_ctl_event_t obj  ) 
 

Get type of a CTL event.

Parameters:
obj CTL event
Returns:
CTL event type

int snd_ctl_event_malloc snd_ctl_event_t **  ptr  ) 
 

allocate an invalid snd_ctl_event_t using standard malloc

Parameters:
ptr returned pointer
Returns:
0 on success otherwise negative error code

size_t snd_ctl_event_sizeof void   ) 
 

get size of snd_ctl_event_t

Returns:
size in bytes

const char* snd_ctl_event_type_name snd_ctl_event_type_t  type  ) 
 

get name of a CTL event type

Parameters:
type CTL event type
Returns:
ascii name of CTL event type

int snd_ctl_get_power_state snd_ctl_t ctl,
unsigned int *  state
 

Get actual Power State.

Parameters:
ctl CTL handle
state Destination value
Returns:
0 on success otherwise a negative error code

int snd_ctl_hwdep_info snd_ctl_t ctl,
snd_hwdep_info_t info
 

Get info about a hardware dependent device.

Parameters:
ctl CTL handle
info Hardware dependent device id/info pointer
Returns:
0 on success otherwise a negative error code

int snd_ctl_hwdep_next_device snd_ctl_t ctl,
int *  device
 

Get next hardware dependent device number.

Parameters:
ctl CTL handle
device current device on entry and next device on return
Returns:
0 on success otherwise a negative error code

const char* snd_ctl_name snd_ctl_t ctl  ) 
 

get identifier of CTL handle

Parameters:
ctl CTL handle
Returns:
ascii identifier of CTL handle
Returns the ASCII identifier of given CTL handle. It's the same identifier specified in snd_ctl_open().

int snd_ctl_nonblock snd_ctl_t ctl,
int  nonblock
 

set nonblock mode

Parameters:
ctl CTL handle
nonblock 0 = block, 1 = nonblock mode
Returns:
0 on success otherwise a negative error code

int snd_ctl_open snd_ctl_t **  ctlp,
const char *  name,
int  mode
 

Opens a CTL.

Parameters:
ctlp Returned CTL handle
name ASCII identifier of the CTL handle
mode Open mode (see SND_CTL_NONBLOCK, SND_CTL_ASYNC)
Returns:
0 on success otherwise a negative error code

int snd_ctl_open_lconf snd_ctl_t **  ctlp,
const char *  name,
int  mode,
snd_config_t lconf
 

Opens a CTL using local configuration.

Parameters:
ctlp Returned CTL handle
name ASCII identifier of the CTL handle
mode Open mode (see SND_CTL_NONBLOCK, SND_CTL_ASYNC)
lconf Local configuration
Returns:
0 on success otherwise a negative error code

int snd_ctl_pcm_info snd_ctl_t ctl,
snd_pcm_info_t info
 

Get info about a PCM device.

Parameters:
ctl CTL handle
info PCM device id/info pointer
Returns:
0 on success otherwise a negative error code

int snd_ctl_pcm_next_device snd_ctl_t ctl,
int *  device
 

Get next PCM device number.

Parameters:
ctl CTL handle
device current device on entry and next device on return
Returns:
0 on success otherwise a negative error code

int snd_ctl_pcm_prefer_subdevice snd_ctl_t ctl,
int  subdev
 

Set preferred PCM subdevice number of successive PCM open.

Parameters:
ctl CTL handle
subdev Preferred PCM subdevice number
Returns:
0 on success otherwise a negative error code

int snd_ctl_poll_descriptors snd_ctl_t ctl,
struct pollfd *  pfds,
unsigned int  space
 

get poll descriptors

Parameters:
ctl CTL handle
pfds array of poll descriptors
space space in the poll descriptor array
Returns:
count of filled descriptors

int snd_ctl_poll_descriptors_count snd_ctl_t ctl  ) 
 

get count of poll descriptors for CTL handle

Parameters:
ctl CTL handle
Returns:
count of poll descriptors

int snd_ctl_poll_descriptors_revents snd_ctl_t ctl,
struct pollfd *  pfds,
unsigned int  nfds,
unsigned short *  revents
 

get returned events from poll descriptors

Parameters:
ctl CTL handle
pfds array of poll descriptors
nfds count of poll descriptors
revents returned events
Returns:
zero if success, otherwise a negative error code

int snd_ctl_rawmidi_info snd_ctl_t ctl,
snd_rawmidi_info_t info
 

Get info about a RawMidi device.

Parameters:
ctl CTL handle
info RawMidi device id/info pointer
Returns:
0 on success otherwise a negative error code

int snd_ctl_rawmidi_next_device snd_ctl_t ctl,
int *  device
 

Get next RawMidi device number.

Parameters:
ctl CTL handle
device current device on entry and next device on return
Returns:
0 on success otherwise a negative error code

int snd_ctl_rawmidi_prefer_subdevice snd_ctl_t ctl,
int  subdev
 

Set preferred RawMidi subdevice number of successive RawMidi open.

Parameters:
ctl CTL handle
subdev Preferred RawMidi subdevice number
Returns:
0 on success otherwise a negative error code

int snd_ctl_read snd_ctl_t ctl,
snd_ctl_event_t event
 

Read an event.

Parameters:
ctl CTL handle
event Event pointer
Returns:
number of events read otherwise a negative error code on failure

int snd_ctl_set_power_state snd_ctl_t ctl,
unsigned int  state
 

Set Power State to given SND_CTL_POWER_* value and do the power management.

Parameters:
ctl CTL handle
state Desired Power State
Returns:
0 on success otherwise a negative error code

int snd_ctl_subscribe_events snd_ctl_t ctl,
int  subscribe
 

Ask to be informed about events (poll, #snd_ctl_async, snd_ctl_read).

Parameters:
ctl CTL handle
subscribe 0 = unsubscribe, 1 = subscribe
Returns:
0 on success otherwise a negative error code

snd_ctl_type_t snd_ctl_type snd_ctl_t ctl  ) 
 

get type of CTL handle

Parameters:
ctl CTL handle
Returns:
type of CTL handle
Returns the type snd_ctl_type_t of given CTL handle.

int snd_ctl_wait snd_ctl_t ctl,
int  timeout
 

Wait for a CTL to become ready (i.e. at least one event pending).

Parameters:
ctl CTL handle
timeout maximum time in milliseconds to wait
Returns:
0 otherwise a negative error code on failure


Generated on Mon May 3 16:15:22 2004 for ALSA project - the C library reference by doxygen 1.3.6