ALSA project - the C library reference
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Typedefs | Enumerations | Functions
hwdep.h File Reference

Application interface library for the ALSA driver. More...

Go to the source code of this file.

Macros

#define SND_HWDEP_DLSYM_VERSION   _dlsym_hwdep_001
#define SND_HWDEP_OPEN_READ   (O_RDONLY)
#define SND_HWDEP_OPEN_WRITE   (O_WRONLY)
#define SND_HWDEP_OPEN_DUPLEX   (O_RDWR)
#define SND_HWDEP_OPEN_NONBLOCK   (O_NONBLOCK)
#define snd_hwdep_info_alloca(ptr)   __snd_alloca(ptr, snd_hwdep_info)
#define snd_hwdep_dsp_status_alloca(ptr)   __snd_alloca(ptr, snd_hwdep_dsp_status)
#define snd_hwdep_dsp_image_alloca(ptr)   __snd_alloca(ptr, snd_hwdep_dsp_image)

Typedefs

typedef struct _snd_hwdep_info snd_hwdep_info_t
typedef struct
_snd_hwdep_dsp_status 
snd_hwdep_dsp_status_t
typedef struct _snd_hwdep_dsp_image snd_hwdep_dsp_image_t
typedef struct _snd_hwdep snd_hwdep_t

Enumerations

enum  snd_hwdep_iface_t {
  SND_HWDEP_IFACE_OPL2 = 0, SND_HWDEP_IFACE_OPL3, SND_HWDEP_IFACE_OPL4, SND_HWDEP_IFACE_SB16CSP,
  SND_HWDEP_IFACE_EMU10K1, SND_HWDEP_IFACE_YSS225, SND_HWDEP_IFACE_ICS2115, SND_HWDEP_IFACE_SSCAPE,
  SND_HWDEP_IFACE_VX, SND_HWDEP_IFACE_MIXART, SND_HWDEP_IFACE_USX2Y, SND_HWDEP_IFACE_EMUX_WAVETABLE,
  SND_HWDEP_IFACE_BLUETOOTH, SND_HWDEP_IFACE_USX2Y_PCM, SND_HWDEP_IFACE_PCXHR, SND_HWDEP_IFACE_SB_RC,
  SND_HWDEP_IFACE_LAST = SND_HWDEP_IFACE_SB_RC
}
enum  snd_hwdep_type_t { SND_HWDEP_TYPE_HW, SND_HWDEP_TYPE_SHM, SND_HWDEP_TYPE_INET }

Functions

int snd_hwdep_open (snd_hwdep_t **hwdep, const char *name, int mode)
 Opens a new connection to the HwDep interface.
int snd_hwdep_close (snd_hwdep_t *hwdep)
 close HwDep handle
int snd_hwdep_poll_descriptors (snd_hwdep_t *hwdep, struct pollfd *pfds, unsigned int space)
 get poll descriptors
int snd_hwdep_poll_descriptors_revents (snd_hwdep_t *hwdep, struct pollfd *pfds, unsigned int nfds, unsigned short *revents)
 get returned events from poll descriptors
int snd_hwdep_nonblock (snd_hwdep_t *hwdep, int nonblock)
 set nonblock mode
int snd_hwdep_info (snd_hwdep_t *hwdep, snd_hwdep_info_t *info)
 get information about HwDep handle
int snd_hwdep_dsp_status (snd_hwdep_t *hwdep, snd_hwdep_dsp_status_t *status)
 get the DSP status information
int snd_hwdep_dsp_load (snd_hwdep_t *hwdep, snd_hwdep_dsp_image_t *block)
 load the DSP block
int snd_hwdep_ioctl (snd_hwdep_t *hwdep, unsigned int request, void *arg)
 do hardware dependent ioctl
ssize_t snd_hwdep_write (snd_hwdep_t *hwdep, const void *buffer, size_t size)
 write bytes using HwDep handle
ssize_t snd_hwdep_read (snd_hwdep_t *hwdep, void *buffer, size_t size)
 read bytes using HwDep handle
size_t snd_hwdep_info_sizeof (void)
 get size of the snd_hwdep_info_t structure in bytes
int snd_hwdep_info_malloc (snd_hwdep_info_t **ptr)
 allocate a new snd_hwdep_info_t structure
void snd_hwdep_info_free (snd_hwdep_info_t *obj)
 frees the snd_hwdep_info_t structure
void snd_hwdep_info_copy (snd_hwdep_info_t *dst, const snd_hwdep_info_t *src)
 copy one snd_hwdep_info_t structure to another
unsigned int snd_hwdep_info_get_device (const snd_hwdep_info_t *obj)
 get hwdep device number
int snd_hwdep_info_get_card (const snd_hwdep_info_t *obj)
 get hwdep card number
const char * snd_hwdep_info_get_id (const snd_hwdep_info_t *obj)
 get hwdep driver identifier
const char * snd_hwdep_info_get_name (const snd_hwdep_info_t *obj)
 get hwdep driver name
snd_hwdep_iface_t snd_hwdep_info_get_iface (const snd_hwdep_info_t *obj)
 get hwdep protocol interface
void snd_hwdep_info_set_device (snd_hwdep_info_t *obj, unsigned int val)
 set hwdep device number
size_t snd_hwdep_dsp_status_sizeof (void)
 get size of the snd_hwdep_dsp_status_t structure in bytes
int snd_hwdep_dsp_status_malloc (snd_hwdep_dsp_status_t **ptr)
 allocate a new snd_hwdep_dsp_status_t structure
void snd_hwdep_dsp_status_free (snd_hwdep_dsp_status_t *obj)
 frees the snd_hwdep_dsp_status_t structure
void snd_hwdep_dsp_status_copy (snd_hwdep_dsp_status_t *dst, const snd_hwdep_dsp_status_t *src)
 copy one snd_hwdep_dsp_status_t structure to another
unsigned int snd_hwdep_dsp_status_get_version (const snd_hwdep_dsp_status_t *obj)
 get the driver version of dsp loader
const char * snd_hwdep_dsp_status_get_id (const snd_hwdep_dsp_status_t *obj)
 get the driver id of dsp loader
unsigned int snd_hwdep_dsp_status_get_num_dsps (const snd_hwdep_dsp_status_t *obj)
 get number of dsp blocks
unsigned int snd_hwdep_dsp_status_get_dsp_loaded (const snd_hwdep_dsp_status_t *obj)
 get the bit flags of the loaded dsp blocks
unsigned int snd_hwdep_dsp_status_get_chip_ready (const snd_hwdep_dsp_status_t *obj)
 get the chip status of dsp loader
size_t snd_hwdep_dsp_image_sizeof (void)
 get size of the snd_hwdep_dsp_image_t structure in bytes
int snd_hwdep_dsp_image_malloc (snd_hwdep_dsp_image_t **ptr)
 allocate a new snd_hwdep_dsp_image_t structure
void snd_hwdep_dsp_image_free (snd_hwdep_dsp_image_t *obj)
 frees the snd_hwdep_dsp_image_t structure
void snd_hwdep_dsp_image_copy (snd_hwdep_dsp_image_t *dst, const snd_hwdep_dsp_image_t *src)
 copy one snd_hwdep_dsp_image_t structure to another
unsigned int snd_hwdep_dsp_image_get_index (const snd_hwdep_dsp_image_t *obj)
 get the DSP block index
const char * snd_hwdep_dsp_image_get_name (const snd_hwdep_dsp_image_t *obj)
 get the name of the DSP block
const void * snd_hwdep_dsp_image_get_image (const snd_hwdep_dsp_image_t *obj)
 get the image pointer of the DSP block
size_t snd_hwdep_dsp_image_get_length (const snd_hwdep_dsp_image_t *obj)
 get the length of the DSP block
void snd_hwdep_dsp_image_set_index (snd_hwdep_dsp_image_t *obj, unsigned int _index)
 set the DSP block index
void snd_hwdep_dsp_image_set_name (snd_hwdep_dsp_image_t *obj, const char *name)
 set the name of the DSP block
void snd_hwdep_dsp_image_set_image (snd_hwdep_dsp_image_t *obj, void *buffer)
 set the DSP block image pointer
void snd_hwdep_dsp_image_set_length (snd_hwdep_dsp_image_t *obj, size_t length)
 set the DSP block length

Detailed Description

Application interface library for the ALSA driver.

Author:
Jaroslav Kysela perex.nosp@m.@per.nosp@m.ex.cz
Abramo Bagnara abram.nosp@m.o@al.nosp@m.sa-pr.nosp@m.ojec.nosp@m.t.org
Takashi Iwai tiwai.nosp@m.@sus.nosp@m.e.de
Date:
1998-2001

Application interface library for the ALSA driver