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

Control Interface


Modules

High level Control Interface
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
}
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
}
enum  _snd_ctl_event_type { SND_CTL_EVENT_ELEM = 0 }
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

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 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.

int snd_ctl_elem_info_is_indirect (const snd_ctl_elem_info_t *obj)
 Get info about values passing policy from a CTL element id/info.

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.

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.

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

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_indirect const snd_ctl_elem_info_t   obj
 

Get info about values passing policy from a CTL element id/info.

Parameters:
obj  CTL element id/info
Returns:
0 if element value need to be passed by contents, 1 if need to be passed with a pointer

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 Thu Mar 27 07:55:57 2003 for ALSA project - the C library reference by doxygen1.2.18