Data Structures | |
| struct | snd_devname |
Defines | |
| #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. | |
Typedefs | |
| typedef enum _snd_config_type | snd_config_type_t |
| typedef struct _snd_config | snd_config_t |
| Internal structure for a configuration node object. | |
| typedef struct _snd_config_iterator * | snd_config_iterator_t |
| Type for a configuration compound iterator. | |
| typedef struct _snd_config_update | snd_config_update_t |
| Internal structure for a configuration private update object. | |
| typedef struct snd_devname | snd_devname_t |
Enumerations | |
| enum | _snd_config_type { 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 } |
Functions | |
| int | snd_config_top (snd_config_t **config) |
| Creates a top level configuration node. | |
| int | snd_config_load (snd_config_t *config, snd_input_t *in) |
| Loads a configuration tree. | |
| int | snd_config_load_override (snd_config_t *config, snd_input_t *in) |
| Loads a configuration tree and overrides existing configuration nodes. | |
| int | snd_config_save (snd_config_t *config, snd_output_t *out) |
| Dumps the contents of a configuration node or tree. | |
| int | snd_config_update (void) |
| Updates snd_config by rereading the global configuration files (if needed). | |
| 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). | |
| int | snd_config_update_free (snd_config_update_t *update) |
| Frees a private update structure. | |
| int | snd_config_update_free_global (void) |
| Frees the global configuration tree in snd_config. | |
| int | snd_config_search (snd_config_t *config, const char *key, snd_config_t **result) |
| Searches for a node in a configuration tree. | |
| int | snd_config_searchv (snd_config_t *config, snd_config_t **result,...) |
| Searches for a node in a configuration tree. | |
| 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. | |
| 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. | |
| 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. | |
| int | snd_config_add (snd_config_t *config, snd_config_t *leaf) |
| Adds a child to a compound configuration node. | |
| int | snd_config_delete (snd_config_t *config) |
| Deletes a configuration node (freeing all its related resources). | |
| int | snd_config_delete_compound_members (const snd_config_t *config) |
| Deletes the children of a compound configuration node (freeing all its related resources). | |
| int | snd_config_copy (snd_config_t **dst, snd_config_t *src) |
| Creates a copy of a configuration node. | |
| int | snd_config_make (snd_config_t **config, const char *key, snd_config_type_t type) |
| Creates a configuration node. | |
| int | snd_config_make_integer (snd_config_t **config, const char *key) |
| Creates an integer configuration node. | |
| int | snd_config_make_integer64 (snd_config_t **config, const char *key) |
| Creates an integer64 configuration node. | |
| int | snd_config_make_real (snd_config_t **config, const char *key) |
| Creates a real configuration node. | |
| int | snd_config_make_string (snd_config_t **config, const char *key) |
| Creates a string configuration node. | |
| int | snd_config_make_pointer (snd_config_t **config, const char *key) |
| Creates a pointer configuration node. | |
| int | snd_config_make_compound (snd_config_t **config, const char *key, int join) |
| Creates an empty compound configuration node. | |
| 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. | |
| int | snd_config_imake_integer64 (snd_config_t **config, const char *key, const long long value) |
| Creates an integer configuration node with the given initial value. | |
| int | snd_config_imake_real (snd_config_t **config, const char *key, const double value) |
| Creates a real configuration node with the given initial value. | |
| 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. | |
| 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. | |
| snd_config_type_t | snd_config_get_type (const snd_config_t *config) |
| Returns the type of a configuration node. | |
| int | snd_config_set_id (snd_config_t *config, const char *id) |
| Sets the id of a configuration node. | |
| int | snd_config_set_integer (snd_config_t *config, long value) |
| Changes the value of an integer configuration node. | |
| int | snd_config_set_integer64 (snd_config_t *config, long long value) |
| Changes the value of an integer64 configuration node. | |
| int | snd_config_set_real (snd_config_t *config, double value) |
| Changes the value of a real configuration node. | |
| int | snd_config_set_string (snd_config_t *config, const char *value) |
| Changes the value of a string configuration node. | |
| int | snd_config_set_ascii (snd_config_t *config, const char *ascii) |
| Changes the value of a configuration node. | |
| int | snd_config_set_pointer (snd_config_t *config, const void *ptr) |
| Changes the value of a pointer configuration node. | |
| int | snd_config_get_id (const snd_config_t *config, const char **value) |
| Returns the id of a configuration node. | |
| int | snd_config_get_integer (const snd_config_t *config, long *value) |
| Returns the value of an integer configuration node. | |
| int | snd_config_get_integer64 (const snd_config_t *config, long long *value) |
| Returns the value of an integer64 configuration node. | |
| int | snd_config_get_real (const snd_config_t *config, double *value) |
| Returns the value of a real configuration node. | |
| int | snd_config_get_ireal (const snd_config_t *config, double *value) |
| Returns the value of a real or integer configuration node. | |
| int | snd_config_get_string (const snd_config_t *config, const char **value) |
| Returns the value of a string configuration node. | |
| int | snd_config_get_ascii (const snd_config_t *config, char **value) |
| Returns the value of a configuration node as a string. | |
| int | snd_config_get_pointer (const snd_config_t *config, const void **value) |
| Returns the value of a pointer configuration node. | |
| int | snd_config_test_id (const snd_config_t *config, const char *id) |
| Compares the id of a configuration node to a given string. | |
| snd_config_iterator_t | snd_config_iterator_first (const snd_config_t *node) |
| Returns an iterator pointing to the first child of a compound configuration node. | |
| snd_config_iterator_t | snd_config_iterator_next (const snd_config_iterator_t iterator) |
| Returns an iterator pointing to the next sibling. | |
| snd_config_iterator_t | snd_config_iterator_end (const snd_config_t *node) |
| Returns an iterator pointing past the last child of a compound configuration node. | |
| snd_config_t * | snd_config_iterator_entry (const snd_config_iterator_t iterator) |
| Returns the configuration node handle pointed to by an iterator. | |
| int | snd_config_get_bool_ascii (const char *ascii) |
| Gets the boolean value from the given ASCII string. | |
| int | snd_config_get_bool (const snd_config_t *conf) |
| Gets the boolean value from a configuration node. | |
| int | snd_config_get_ctl_iface_ascii (const char *ascii) |
| Gets the control interface index from the given ASCII string. | |
| int | snd_config_get_ctl_iface (const snd_config_t *conf) |
| Gets the control interface index from a configuration node. | |
| int | snd_names_list (const char *iface, snd_devname_t **list) |
| Give a list of device names and associated comments for selected interface. | |
| void | snd_names_list_free (snd_devname_t *list) |
| Release the list of device names. | |
Variables | |
| snd_config_t * | snd_config |
| snd_config_t * | snd_config = NULL |
| #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.
| pos | Iterator variable for the current node. | |
| next | Iterator variable for the next node. | |
| node | Handle to the compound configuration node to iterate over. |
| typedef struct _snd_config_iterator* snd_config_iterator_t |
Type for a configuration compound iterator.
The ALSA library uses this pointer type as a handle to a configuration compound iterator. Applications don't directly access the contents of the structure pointed to by this type.
| typedef struct _snd_config snd_config_t |
Internal structure for a configuration node object.
The ALSA library uses a pointer to this structure as a handle to a configuration node. Applications don't access its contents directly.
| typedef enum _snd_config_type snd_config_type_t |
Configuration node type.
| typedef struct _snd_config_update snd_config_update_t |
Internal structure for a configuration private update object.
The ALSA library uses this structure to save private update information.
| typedef struct snd_devname snd_devname_t |
Device-name list element
| enum _snd_config_type |
Configuration node type.
| int snd_config_add | ( | snd_config_t * | father, | |
| snd_config_t * | leaf | |||
| ) |
Adds a child to a compound configuration node.
| father | Handle to the compound configuration node. | |
| leaf | Handle to the configuration node to be added to father. |
| int snd_config_copy | ( | snd_config_t ** | dst, | |
| snd_config_t * | src | |||
| ) |
Creates a copy of a configuration node.
| dst | The function puts the handle to the new configuration node at the address specified by dst. | |
| src | Handle to the source configuration node. |
| int snd_config_delete | ( | snd_config_t * | config | ) |
Deletes a configuration node (freeing all its related resources).
| config | Handle to the configuration node to be deleted. |
| int snd_config_delete_compound_members | ( | const snd_config_t * | config | ) |
Deletes the children of a compound configuration node (freeing all its related resources).
| config | Handle to the compound configuration node. |
config are deleted recursively.
| 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.
| config | Handle to the source configuration node. | |
| root | Handle to the root of the source configuration. | |
| private_data | Handle to the private data node for runtime evaluation. | |
| result | The function puts the handle to the result node at the address specified by result. result is NULL for in-place evaluation. |
| 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.
| config | Handle to the configuration node. | |
| root | Handle to the root configuration node. | |
| args | Arguments string (optional). | |
| private_data | Handle to the private data node for functions. | |
| result | The function puts the handle to the result configuration node at the address specified by result. |
| int snd_config_get_ascii | ( | const snd_config_t * | config, | |
| char ** | ascii | |||
| ) |
Returns the value of a configuration node as a string.
| config | Handle to the configuration node. | |
| ascii | The function puts the pointer to the returned string at the address specified by ascii. |
free() when it is no longer used.
| int snd_config_get_bool | ( | const snd_config_t * | conf | ) |
Gets the boolean value from a configuration node.
| conf | Handle to the configuration node to be parsed. |
| int snd_config_get_bool_ascii | ( | const char * | ascii | ) |
Gets the boolean value from the given ASCII string.
| ascii | The string to be parsed. |
| int snd_config_get_ctl_iface | ( | const snd_config_t * | conf | ) |
Gets the control interface index from a configuration node.
| conf | Handle to the configuration node to be parsed. |
| int snd_config_get_ctl_iface_ascii | ( | const char * | ascii | ) |
Gets the control interface index from the given ASCII string.
| ascii | The string to be parsed. |
| int snd_config_get_id | ( | const snd_config_t * | config, | |
| const char ** | id | |||
| ) |
Returns the id of a configuration node.
| config | Handle to the configuration node. | |
| id | The function puts the pointer to the id string at the address specified by id. |
| int snd_config_get_integer | ( | const snd_config_t * | config, | |
| long * | ptr | |||
| ) |
Returns the value of an integer configuration node.
| config | Handle to the configuration node. | |
| ptr | The function puts the node's value at the address specified by ptr. |
| int snd_config_get_integer64 | ( | const snd_config_t * | config, | |
| long long * | ptr | |||
| ) |
Returns the value of an integer64 configuration node.
| config | Handle to the configuration node. | |
| ptr | The function puts the node's value at the address specified by ptr. |
| int snd_config_get_ireal | ( | const snd_config_t * | config, | |
| double * | ptr | |||
| ) |
Returns the value of a real or integer configuration node.
| config | Handle to the configuration node. | |
| ptr | The function puts the node's value at the address specified by ptr. |
double type on the fly.
| int snd_config_get_pointer | ( | const snd_config_t * | config, | |
| const void ** | ptr | |||
| ) |
Returns the value of a pointer configuration node.
| config | Handle to the configuration node. | |
| ptr | The function puts the node's value at the address specified by ptr. |
| int snd_config_get_real | ( | const snd_config_t * | config, | |
| double * | ptr | |||
| ) |
Returns the value of a real configuration node.
| config | Handle to the configuration node. | |
| ptr | The function puts the node's value at the address specified by ptr. |
| int snd_config_get_string | ( | const snd_config_t * | config, | |
| const char ** | ptr | |||
| ) |
Returns the value of a string configuration node.
| config | Handle to the configuration node. | |
| ptr | The function puts the node's value at the address specified by ptr. |
| snd_config_type_t snd_config_get_type | ( | const snd_config_t * | config | ) |
Returns the type of a configuration node.
| config | Handle to the configuration node. |
| int snd_config_imake_integer | ( | snd_config_t ** | config, | |
| const char * | id, | |||
| const long | value | |||
| ) |
Creates an integer configuration node with the given initial value.
| config | The function puts the handle to the new node at the address specified by config. | |
| id | The id of the new node. | |
| value | The initial value of the new node. |
| int snd_config_imake_integer64 | ( | snd_config_t ** | config, | |
| const char * | id, | |||
| const long long | value | |||
| ) |
Creates an integer configuration node with the given initial value.
| config | The function puts the handle to the new node at the address specified by config. | |
| id | The id of the new node. | |
| value | The initial value of the new node. |
| int snd_config_imake_pointer | ( | snd_config_t ** | config, | |
| const char * | id, | |||
| const void * | value | |||
| ) |
Creates a pointer configuration node with the given initial value.
| config | The function puts the handle to the new node at the address specified by config. | |
| id | The id of the new node. | |
| value | The initial value of the new node. May be NULL. |
| int snd_config_imake_real | ( | snd_config_t ** | config, | |
| const char * | id, | |||
| const double | value | |||
| ) |
Creates a real configuration node with the given initial value.
| config | The function puts the handle to the new node at the address specified by config. | |
| id | The id of the new node. | |
| value | The initial value of the new node. |
| int snd_config_imake_string | ( | snd_config_t ** | config, | |
| const char * | id, | |||
| const char * | value | |||
| ) |
Creates a string configuration node with the given initial value.
| config | The function puts the handle to the new node at the address specified by config. | |
| id | The id of the new node. | |
| value | The initial value of the new node. May be NULL. |
| snd_config_iterator_t snd_config_iterator_end | ( | const snd_config_t * | node | ) |
Returns an iterator pointing past the last child of a compound configuration node.
| node | Handle to the compound configuration node. |
node. | snd_config_t* snd_config_iterator_entry | ( | const snd_config_iterator_t | iterator | ) |
Returns the configuration node handle pointed to by an iterator.
| iterator | A configuration node iterator. |
iterator. | snd_config_iterator_t snd_config_iterator_first | ( | const snd_config_t * | node | ) |
Returns an iterator pointing to the first child of a compound configuration node.
| node | Handle to the compound configuration node. |
| snd_config_iterator_t snd_config_iterator_next | ( | const snd_config_iterator_t | iterator | ) |
Returns an iterator pointing to the next sibling.
| iterator | An iterator pointing to a child configuration node. |
iterator. If iterator is the last sibling, the returned value is the same as the result of calling snd_config_iterator_end on the father of the nodes. | int snd_config_load | ( | snd_config_t * | config, | |
| snd_input_t * | in | |||
| ) |
Loads a configuration tree.
| config | Handle to a top level configuration node. | |
| in | Input handle to read the configuration from. |
| int snd_config_load_override | ( | snd_config_t * | config, | |
| snd_input_t * | in | |||
| ) |
Loads a configuration tree and overrides existing configuration nodes.
| config | Handle to a top level configuration node. | |
| in | Input handle to read the configuration from. |
| int snd_config_make | ( | snd_config_t ** | config, | |
| const char * | id, | |||
| snd_config_type_t | type | |||
| ) |
Creates a configuration node.
| config | The function puts the handle to the new node at the address specified by config. | |
| id | The id of the new node. | |
| type | The type of the new node. |
| int snd_config_make_compound | ( | snd_config_t ** | config, | |
| const char * | id, | |||
| int | join | |||
| ) |
Creates an empty compound configuration node.
| config | The function puts the handle to the new node at the address specified by config. | |
| id | The id of the new node. | |
| join | Join flag. This is checked in snd_config_save to change look. (Huh?) |
| int snd_config_make_integer | ( | snd_config_t ** | config, | |
| const char * | id | |||
| ) |
Creates an integer configuration node.
| config | The function puts the handle to the new node at the address specified by config. | |
| id | The id of the new node. |
| int snd_config_make_integer64 | ( | snd_config_t ** | config, | |
| const char * | id | |||
| ) |
Creates an integer64 configuration node.
| config | The function puts the handle to the new node at the address specified by config. | |
| id | The id of the new node. |
| int snd_config_make_pointer | ( | snd_config_t ** | config, | |
| const char * | id | |||
| ) |
Creates a pointer configuration node.
| config | The function puts the handle to the new node at the address specified by config. | |
| id | The id of the new node. |
NULL.
| int snd_config_make_real | ( | snd_config_t ** | config, | |
| const char * | id | |||
| ) |
Creates a real configuration node.
| config | The function puts the handle to the new node at the address specified by config. | |
| id | The id of the new node. |
| int snd_config_make_string | ( | snd_config_t ** | config, | |
| const char * | id | |||
| ) |
Creates a string configuration node.
| config | The function puts the handle to the new node at the address specified by config. | |
| id | The id of the new node. |
NULL.
| int snd_config_save | ( | snd_config_t * | config, | |
| snd_output_t * | out | |||
| ) |
Dumps the contents of a configuration node or tree.
| config | Handle to the (root) configuration node. | |
| out | Output handle. |
| int snd_config_search | ( | snd_config_t * | config, | |
| const char * | key, | |||
| snd_config_t ** | result | |||
| ) |
Searches for a node in a configuration tree.
| config | Handle to the root of the configuration (sub)tree to search. | |
| key | Search key: one or more node keys, separated with dots. | |
| result | The function puts the handle to the node found at the address specified by result. |
| int snd_config_search_definition | ( | snd_config_t * | config, | |
| const char * | base, | |||
| const char * | name, | |||
| snd_config_t ** | result | |||
| ) |
Searches for a definition in a configuration tree, using aliases and expanding hooks and arguments.
| config | Handle to the configuration (sub)tree to search. | |
| base | Implicit key base, or NULL for none. | |
| name | Key suffix. | |
| result | The function puts the handle to the expanded found node at the address specified by result. |
If key contains a dot (.), the implicit base is ignored and the key starts from the root given by config.
| int snd_config_searchv | ( | snd_config_t * | config, | |
| snd_config_t ** | result, | |||
| ... | ||||
| ) |
Searches for a node in a configuration tree.
| config | Handle to the root of the configuration (sub)tree to search. | |
| result | The function puts the handle to the node found at the address specified by result. | |
| ... | One or more concatenated dot separated search keys, terminated with NULL. |
| int snd_config_set_ascii | ( | snd_config_t * | config, | |
| const char * | ascii | |||
| ) |
Changes the value of a configuration node.
| config | Handle to the configuration node. | |
| ascii | The new value for the node as an ASCII string. ascii must not be NULL, not even for a string node. |
| int snd_config_set_id | ( | snd_config_t * | config, | |
| const char * | id | |||
| ) |
Sets the id of a configuration node.
| config | Handle to the configuration node. | |
| id | The new node id. |
| int snd_config_set_integer | ( | snd_config_t * | config, | |
| long | value | |||
| ) |
Changes the value of an integer configuration node.
| config | Handle to the configuration node. | |
| value | The new value for the node. |
| int snd_config_set_integer64 | ( | snd_config_t * | config, | |
| long long | value | |||
| ) |
Changes the value of an integer64 configuration node.
| config | Handle to the configuration node. | |
| value | The new value for the node. |
| int snd_config_set_pointer | ( | snd_config_t * | config, | |
| const void * | value | |||
| ) |
Changes the value of a pointer configuration node.
| config | Handle to the configuration node. | |
| value | The new value for the node. May be NULL. |
| int snd_config_set_real | ( | snd_config_t * | config, | |
| double | value | |||
| ) |
Changes the value of a real configuration node.
| config | Handle to the configuration node. | |
| value | The new value for the node. |
| int snd_config_set_string | ( | snd_config_t * | config, | |
| const char * | value | |||
| ) |
Changes the value of a string configuration node.
| config | Handle to the configuration node. | |
| value | The new value for the node. May be NULL. |
| int snd_config_test_id | ( | const snd_config_t * | config, | |
| const char * | id | |||
| ) |
Compares the id of a configuration node to a given string.
| config | Handle to the configuration node. | |
| id | ASCII id. |
strcmp function. | int snd_config_top | ( | snd_config_t ** | config | ) |
Creates a top level configuration node.
| config | The function puts the handle to the new node at the address specified by config. |
| int snd_config_update | ( | void | ) |
Updates snd_config by rereading the global configuration files (if needed).
| 0 | No action is needed. | |
| 1 | The configuration tree has been rebuilt. |
ALSA_CONFIG_PATH. If this is not set, the default value is "/usr/share/alsa/alsa.conf".
| int snd_config_update_free | ( | snd_config_update_t * | update | ) |
Frees a private update structure.
| update | The private update structure to free. |
| int snd_config_update_free_global | ( | void | ) |
Frees the global configuration tree in snd_config.
| int snd_config_update_r | ( | snd_config_t ** | _top, | |
| snd_config_update_t ** | _update, | |||
| const char * | cfgs | |||
| ) |
Updates a configuration tree by rereading the configuration files (if needed).
| _top | Address of the handle to the top level node. | |
| _update | Address of a pointer to private update information. | |
| cfgs | A list of configuration file names, delimited with ':'. If cfgs is set to NULL, the default global configuration file is used ("/usr/share/alsa/alsa.conf"). |
| 0 | No action is needed. | |
| 1 | The configuration tree has been rebuilt. |
ALSA_CONFIG_PATH.
| int snd_names_list | ( | const char * | iface, | |
| snd_devname_t ** | list | |||
| ) |
Give a list of device names and associated comments for selected interface.
| iface | a string identifying interface ("pcm", "ctl", "seq", "rawmidi") | |
| list | result - a pointer to list |
ALSA_NAMES_FILE.
| void snd_names_list_free | ( | snd_devname_t * | list | ) |
Release the list of device names.
| list | the name list to release |
| snd_config_t* snd_config = NULL |
Configuration top level node (the global configuration).
Configuration top level node (the global configuration).
1.5.8