ALSA project - the C library reference
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
conf.h File Reference

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

Go to the source code of this file.

Data Structures

struct  snd_devname_t
 

Macros

#define SND_CONFIG_DLSYM_VERSION_EVALUATE   _dlsym_config_evaluate_001
 dlsym version for the config evaluate callback.
 
#define SND_CONFIG_DLSYM_VERSION_HOOK   _dlsym_config_hook_001
 dlsym version for the config hook callback.
 
#define snd_config_for_each(pos, next, node)    for (pos = snd_config_iterator_first(node), next = snd_config_iterator_next(pos); pos != snd_config_iterator_end(node); pos = next, next = snd_config_iterator_next(pos))
 Helper macro to iterate over the children of a compound node. More...
 

Typedefs

typedef struct _snd_config snd_config_t
 Internal structure for a configuration node object. More...
 
typedef struct _snd_config_iterator * snd_config_iterator_t
 Type for a configuration compound iterator. More...
 
typedef struct _snd_config_update snd_config_update_t
 Internal structure for a configuration private update object. More...
 
typedef int(* snd_config_expand_fcn_t) (snd_config_t **dst, const char *s, void *private_data)
 

Enumerations

enum  snd_config_type_t {
  SND_CONFIG_TYPE_INTEGER , SND_CONFIG_TYPE_INTEGER64 , SND_CONFIG_TYPE_REAL , SND_CONFIG_TYPE_STRING ,
  SND_CONFIG_TYPE_POINTER , SND_CONFIG_TYPE_COMPOUND = 1024
}
 Configuration node type. More...
 

Functions

const char * snd_config_topdir (void)
 
int snd_config_top (snd_config_t **config)
 Creates a top level configuration node. More...
 
int snd_config_load (snd_config_t *config, snd_input_t *in)
 Loads a configuration tree. More...
 
int snd_config_load_string (snd_config_t **config, const char *s, size_t size)
 Loads a configuration tree from a string. More...
 
int snd_config_load_override (snd_config_t *config, snd_input_t *in)
 Loads a configuration tree and overrides existing configuration nodes. More...
 
int snd_config_save (snd_config_t *config, snd_output_t *out)
 Dumps the contents of a configuration node or tree. More...
 
int snd_config_update (void)
 Updates snd_config by rereading the global configuration files (if needed). More...
 
int snd_config_update_r (snd_config_t **top, snd_config_update_t **update, const char *path)
 Updates a configuration tree by rereading the configuration files (if needed). More...
 
int snd_config_update_free (snd_config_update_t *update)
 Frees a private update structure. More...
 
int snd_config_update_free_global (void)
 Frees the global configuration tree in snd_config. More...
 
int snd_config_update_ref (snd_config_t **top)
 Updates snd_config and takes its reference. More...
 
void snd_config_ref (snd_config_t *top)
 Take the reference of the config tree. More...
 
void snd_config_unref (snd_config_t *top)
 Unreference the config tree. More...
 
int snd_config_search (snd_config_t *config, const char *key, snd_config_t **result)
 Searches for a node in a configuration tree. More...
 
int snd_config_searchv (snd_config_t *config, snd_config_t **result,...)
 Searches for a node in a configuration tree. More...
 
int snd_config_search_definition (snd_config_t *config, const char *base, const char *key, snd_config_t **result)
 Searches for a definition in a configuration tree, using aliases and expanding hooks and arguments. More...
 
int snd_config_expand_custom (snd_config_t *config, snd_config_t *root, snd_config_expand_fcn_t fcn, void *private_data, snd_config_t **result)
 Expands a configuration node, applying arguments and functions. More...
 
int snd_config_expand (snd_config_t *config, snd_config_t *root, const char *args, snd_config_t *private_data, snd_config_t **result)
 Expands a configuration node, applying arguments and functions. More...
 
int snd_config_evaluate (snd_config_t *config, snd_config_t *root, snd_config_t *private_data, snd_config_t **result)
 Evaluates a configuration node at runtime. More...
 
int snd_config_evaluate_string (snd_config_t **dst, const char *s, snd_config_expand_fcn_t fcn, void *private_data)
 
int snd_config_add (snd_config_t *config, snd_config_t *child)
 Adds a child to a compound configuration node. More...
 
int snd_config_add_before (snd_config_t *before, snd_config_t *child)
 Adds a child before another child configuration node. More...
 
int snd_config_add_after (snd_config_t *after, snd_config_t *child)
 Adds a child after another child configuration node. More...
 
int snd_config_remove (snd_config_t *config)
 Removes a configuration node from its tree. More...
 
int snd_config_delete (snd_config_t *config)
 Frees a configuration node. More...
 
int snd_config_delete_compound_members (const snd_config_t *config)
 Deletes the children of a node. More...
 
int snd_config_copy (snd_config_t **dst, snd_config_t *src)
 Creates a copy of a configuration node. More...
 
int snd_config_substitute (snd_config_t *dst, snd_config_t *src)
 Substitutes one configuration node to another. More...
 
int snd_config_merge (snd_config_t *dst, snd_config_t *src, int override)
 In-place merge of two config handles. More...
 
int snd_config_make (snd_config_t **config, const char *key, snd_config_type_t type)
 Creates a configuration node. More...
 
int snd_config_make_integer (snd_config_t **config, const char *key)
 Creates an integer configuration node. More...
 
int snd_config_make_integer64 (snd_config_t **config, const char *key)
 Creates a 64-bit-integer configuration node. More...
 
int snd_config_make_real (snd_config_t **config, const char *key)
 Creates a real number configuration node. More...
 
int snd_config_make_string (snd_config_t **config, const char *key)
 Creates a string configuration node. More...
 
int snd_config_make_pointer (snd_config_t **config, const char *key)
 Creates a pointer configuration node. More...
 
int snd_config_make_compound (snd_config_t **config, const char *key, int join)
 Creates an empty compound configuration node. More...
 
int snd_config_make_path (snd_config_t **config, snd_config_t *root, const char *key, int join, int override)
 Creates an empty compound configuration node in the path. More...
 
int snd_config_imake_integer (snd_config_t **config, const char *key, const long value)
 Creates an integer configuration node with the given initial value. More...
 
int snd_config_imake_integer64 (snd_config_t **config, const char *key, const long long value)
 Creates a 64-bit-integer configuration node with the given initial value. More...
 
int snd_config_imake_real (snd_config_t **config, const char *key, const double value)
 Creates a real number configuration node with the given initial value. More...
 
int snd_config_imake_string (snd_config_t **config, const char *key, const char *ascii)
 Creates a string configuration node with the given initial value. More...
 
int snd_config_imake_safe_string (snd_config_t **config, const char *key, const char *ascii)
 
int snd_config_imake_pointer (snd_config_t **config, const char *key, const void *ptr)
 Creates a pointer configuration node with the given initial value. More...
 
snd_config_type_t snd_config_get_type (const snd_config_t *config)
 Returns the type of a configuration node. More...
 
int snd_config_is_array (const snd_config_t *config)
 Returns if the compound is an array (and count of items). More...
 
int snd_config_is_empty (const snd_config_t *config)
 Returns if the compound has no fields (is empty). More...
 
int snd_config_set_id (snd_config_t *config, const char *id)
 Sets the id of a configuration node. More...
 
int snd_config_set_integer (snd_config_t *config, long value)
 Changes the value of an integer configuration node. More...
 
int snd_config_set_integer64 (snd_config_t *config, long long value)
 Changes the value of a 64-bit-integer configuration node. More...
 
int snd_config_set_real (snd_config_t *config, double value)
 Changes the value of a real-number configuration node. More...
 
int snd_config_set_string (snd_config_t *config, const char *value)
 Changes the value of a string configuration node. More...
 
int snd_config_set_ascii (snd_config_t *config, const char *ascii)
 Changes the value of a configuration node. More...
 
int snd_config_set_pointer (snd_config_t *config, const void *ptr)
 Changes the value of a pointer configuration node. More...
 
int snd_config_get_id (const snd_config_t *config, const char **value)
 Returns the id of a configuration node. More...
 
int snd_config_get_integer (const snd_config_t *config, long *value)
 Returns the value of an integer configuration node. More...
 
int snd_config_get_integer64 (const snd_config_t *config, long long *value)
 Returns the value of a 64-bit-integer configuration node. More...
 
int snd_config_get_real (const snd_config_t *config, double *value)
 Returns the value of a real-number configuration node. More...
 
int snd_config_get_ireal (const snd_config_t *config, double *value)
 Returns the value of a real or integer configuration node. More...
 
int snd_config_get_string (const snd_config_t *config, const char **value)
 Returns the value of a string configuration node. More...
 
int snd_config_get_ascii (const snd_config_t *config, char **value)
 Returns the value of a configuration node as a string. More...
 
int snd_config_get_pointer (const snd_config_t *config, const void **value)
 Returns the value of a pointer configuration node. More...
 
int snd_config_test_id (const snd_config_t *config, const char *id)
 Compares the id of a configuration node to a given string. More...
 
snd_config_iterator_t snd_config_iterator_first (const snd_config_t *node)
 Returns an iterator pointing to a node's first child. More...
 
snd_config_iterator_t snd_config_iterator_next (const snd_config_iterator_t iterator)
 Returns an iterator pointing to the next sibling. More...
 
snd_config_iterator_t snd_config_iterator_end (const snd_config_t *node)
 Returns an iterator that ends a node's children list. More...
 
snd_config_tsnd_config_iterator_entry (const snd_config_iterator_t iterator)
 Returns the configuration node handle pointed to by an iterator. More...
 
int snd_config_get_bool_ascii (const char *ascii)
 Gets the boolean value from the given ASCII string. More...
 
int snd_config_get_bool (const snd_config_t *conf)
 Gets the boolean value from a configuration node. More...
 
int snd_config_get_card (const snd_config_t *conf)
 Gets the card number from a configuration node. More...
 
int snd_config_get_ctl_iface_ascii (const char *ascii)
 Gets the control interface index from the given ASCII string. More...
 
int snd_config_get_ctl_iface (const snd_config_t *conf)
 Gets the control interface index from a configuration node. More...
 
int snd_names_list (const char *iface, snd_devname_t **list)
 This function is unimplemented. More...
 
void snd_names_list_free (snd_devname_t *list)
 This function is unimplemented. More...
 

Variables

snd_config_tsnd_config
 Configuration top-level node (the global configuration). More...
 

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