ALSA project - the C library reference
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Typedefs | Functions | Variables
Error handling


#define SND_ERROR_BEGIN   500000
#define SNDERR(args...)   snd_lib_error(__FILE__, __LINE__, __FUNCTION__, 0, ##args)
#define SYSERR(args...)   snd_lib_error(__FILE__, __LINE__, __FUNCTION__, errno, ##args)


typedef void(* snd_lib_error_handler_t )(const char *file, int line, const char *function, int err, const char *fmt,...)
 Error handler callback.


const char * snd_strerror (int errnum)
 Returns the message for an error code.
int snd_lib_error_set_handler (snd_lib_error_handler_t handler)
 Sets the error handler.


snd_lib_error_handler_t snd_lib_error
snd_lib_error_handler_t snd_lib_error = snd_lib_error_default

Detailed Description

Error handling macros and functions.

Macro Definition Documentation


Lisp encountered an error during acall.

#define SND_ERROR_BEGIN   500000

Lower boundary of sound error codes.


Kernel/library protocols are not compatible.

#define SNDERR (   args...)    snd_lib_error(__FILE__, __LINE__, __FUNCTION__, 0, ##args)

Shows a sound error message.

#define SYSERR (   args...)    snd_lib_error(__FILE__, __LINE__, __FUNCTION__, errno, ##args)

Shows a system error message (related to errno).

Typedef Documentation

typedef void(* snd_lib_error_handler_t)(const char *file, int line, const char *function, int err, const char *fmt,...)

Error handler callback.

fileSource file name.
lineLine number.
functionFunction name.
errValue of errno, or 0 if not relevant.
fmtprintf(3) format.
...printf(3) arguments.

A function of this type is called by the ALSA library when an error occurs. This function usually shows the message on the screen, and/or logs it.

Function Documentation

int snd_lib_error_set_handler ( snd_lib_error_handler_t  handler)

Sets the error handler.

handlerThe pointer to the new error handler function.

This function sets a new error handler, or (if handler is NULL) the default one which prints the error messages to stderr.

const char* snd_strerror ( int  errnum)

Returns the message for an error code.

errnumThe error code number, which must be a system error code or an ALSA error code.
The ASCII description of the given numeric error code.
/test/latency.c, /test/pcm.c, /test/pcm_min.c, and /test/timer.c.

Variable Documentation

snd_lib_error_handler_t snd_lib_error

Pointer to the error handler function. For internal use only.

snd_lib_error_handler_t snd_lib_error = snd_lib_error_default

Pointer to the error handler function. For internal use only.