Current File : //proc/self/root/kunden/usr/share/doc/alsa-lib-devel/doxygen/html/conf_8c.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>ALSA project - the C library reference: /builddir/build/BUILD/alsa-lib-1.2.13/src/conf.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">ALSA project - the C library reference
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle">
<div class="title">conf.c File Reference<div class="ingroups"><a class="el" href="group___configuration.html">Configuration Interface</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Configuration helper functions.  
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a8b857484628b5b4cbd2ac60503d4f80e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="conf_8c.html#a8b857484628b5b4cbd2ac60503d4f80e">ALSA_CONFIG_PATH_VAR</a>&#160;&#160;&#160;&quot;ALSA_CONFIG_PATH&quot;</td></tr>
<tr class="separator:a8b857484628b5b4cbd2ac60503d4f80e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga122e8b1d09be7b060eabe59cd1fb2772"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga122e8b1d09be7b060eabe59cd1fb2772">snd_config_topdir</a> (void)</td></tr>
<tr class="memdesc:ga122e8b1d09be7b060eabe59cd1fb2772"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the default top-level config directory.  <a href="group___configuration.html#ga122e8b1d09be7b060eabe59cd1fb2772">More...</a><br /></td></tr>
<tr class="separator:ga122e8b1d09be7b060eabe59cd1fb2772"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0c4acd2de7999ad6e477d398662485c2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga0c4acd2de7999ad6e477d398662485c2">snd_config_substitute</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *dst, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *src)</td></tr>
<tr class="memdesc:ga0c4acd2de7999ad6e477d398662485c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Substitutes one configuration node to another.  <a href="group___configuration.html#ga0c4acd2de7999ad6e477d398662485c2">More...</a><br /></td></tr>
<tr class="separator:ga0c4acd2de7999ad6e477d398662485c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a281182963641e7cd5975f56faad6ff14"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="conf_8c.html#a281182963641e7cd5975f56faad6ff14">snd_config_get_type_ascii</a> (const char *ascii, <a class="el" href="group___configuration.html#gaa41083e55d19c7755c5d624030e06887">snd_config_type_t</a> *<a class="el" href="ump__msg_8h.html#ad44b615021ed3ccb734fcaf583ef4a03">type</a>)</td></tr>
<tr class="memdesc:a281182963641e7cd5975f56faad6ff14"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts an ASCII string to a configuration node type.  <a href="conf_8c.html#a281182963641e7cd5975f56faad6ff14">More...</a><br /></td></tr>
<tr class="separator:a281182963641e7cd5975f56faad6ff14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6def4c43ce325abaa3ddfba5a4f4d138"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___configuration.html#gaa41083e55d19c7755c5d624030e06887">snd_config_type_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga6def4c43ce325abaa3ddfba5a4f4d138">snd_config_get_type</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config)</td></tr>
<tr class="memdesc:ga6def4c43ce325abaa3ddfba5a4f4d138"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the type of a configuration node.  <a href="group___configuration.html#ga6def4c43ce325abaa3ddfba5a4f4d138">More...</a><br /></td></tr>
<tr class="separator:ga6def4c43ce325abaa3ddfba5a4f4d138"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae369d6f289748726617834b5d02047ff"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gae369d6f289748726617834b5d02047ff">snd_config_is_array</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config)</td></tr>
<tr class="memdesc:gae369d6f289748726617834b5d02047ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns if the compound is an array (and count of items).  <a href="group___configuration.html#gae369d6f289748726617834b5d02047ff">More...</a><br /></td></tr>
<tr class="separator:gae369d6f289748726617834b5d02047ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac2f424a17a2fb56fd22103a64b45bdb5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gac2f424a17a2fb56fd22103a64b45bdb5">snd_config_is_empty</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config)</td></tr>
<tr class="memdesc:gac2f424a17a2fb56fd22103a64b45bdb5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns if the compound has no fields (is empty).  <a href="group___configuration.html#gac2f424a17a2fb56fd22103a64b45bdb5">More...</a><br /></td></tr>
<tr class="separator:gac2f424a17a2fb56fd22103a64b45bdb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae366751e8ea98aeb69f9ef876f7b949c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gae366751e8ea98aeb69f9ef876f7b949c">snd_config_get_id</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char **id)</td></tr>
<tr class="memdesc:gae366751e8ea98aeb69f9ef876f7b949c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the id of a configuration node.  <a href="group___configuration.html#gae366751e8ea98aeb69f9ef876f7b949c">More...</a><br /></td></tr>
<tr class="separator:gae366751e8ea98aeb69f9ef876f7b949c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga550948931d44695b6d8e8f148f87cb54"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga550948931d44695b6d8e8f148f87cb54">snd_config_set_id</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *id)</td></tr>
<tr class="memdesc:ga550948931d44695b6d8e8f148f87cb54"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the id of a configuration node.  <a href="group___configuration.html#ga550948931d44695b6d8e8f148f87cb54">More...</a><br /></td></tr>
<tr class="separator:ga550948931d44695b6d8e8f148f87cb54"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf563d57ea9d576a94578368a3d2382c3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gaf563d57ea9d576a94578368a3d2382c3">snd_config_top</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config)</td></tr>
<tr class="memdesc:gaf563d57ea9d576a94578368a3d2382c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a top level configuration node.  <a href="group___configuration.html#gaf563d57ea9d576a94578368a3d2382c3">More...</a><br /></td></tr>
<tr class="separator:gaf563d57ea9d576a94578368a3d2382c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga51f79d1f24a519e126415c72210525b0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga51f79d1f24a519e126415c72210525b0">snd_config_load</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___input.html#ga39165553a2907c5a27f325e3ce4e8301">snd_input_t</a> *in)</td></tr>
<tr class="memdesc:ga51f79d1f24a519e126415c72210525b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Loads a configuration tree.  <a href="group___configuration.html#ga51f79d1f24a519e126415c72210525b0">More...</a><br /></td></tr>
<tr class="separator:ga51f79d1f24a519e126415c72210525b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3ae9f6b0d8f708a839c44e6d4af4b93c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga3ae9f6b0d8f708a839c44e6d4af4b93c">snd_config_load_string</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *s, size_t size)</td></tr>
<tr class="memdesc:ga3ae9f6b0d8f708a839c44e6d4af4b93c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Loads a configuration tree from a string.  <a href="group___configuration.html#ga3ae9f6b0d8f708a839c44e6d4af4b93c">More...</a><br /></td></tr>
<tr class="separator:ga3ae9f6b0d8f708a839c44e6d4af4b93c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga27334922bab8391aa2ef1813f48f4d70"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga27334922bab8391aa2ef1813f48f4d70">snd_config_load_override</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___input.html#ga39165553a2907c5a27f325e3ce4e8301">snd_input_t</a> *in)</td></tr>
<tr class="memdesc:ga27334922bab8391aa2ef1813f48f4d70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Loads a configuration tree and overrides existing configuration nodes.  <a href="group___configuration.html#ga27334922bab8391aa2ef1813f48f4d70">More...</a><br /></td></tr>
<tr class="separator:ga27334922bab8391aa2ef1813f48f4d70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6f011f2a8063dafd80bd8af506dd621e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga6f011f2a8063dafd80bd8af506dd621e">snd_config_add</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *parent, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *child)</td></tr>
<tr class="memdesc:ga6f011f2a8063dafd80bd8af506dd621e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a child to a compound configuration node.  <a href="group___configuration.html#ga6f011f2a8063dafd80bd8af506dd621e">More...</a><br /></td></tr>
<tr class="separator:ga6f011f2a8063dafd80bd8af506dd621e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad8cc6279c458110f47d7759e308c4ea4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gad8cc6279c458110f47d7759e308c4ea4">snd_config_add_after</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *after, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *child)</td></tr>
<tr class="memdesc:gad8cc6279c458110f47d7759e308c4ea4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a child after another child configuration node.  <a href="group___configuration.html#gad8cc6279c458110f47d7759e308c4ea4">More...</a><br /></td></tr>
<tr class="separator:gad8cc6279c458110f47d7759e308c4ea4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3bd36661e3aa30c51e836fa7b44ca2d5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga3bd36661e3aa30c51e836fa7b44ca2d5">snd_config_add_before</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *before, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *child)</td></tr>
<tr class="memdesc:ga3bd36661e3aa30c51e836fa7b44ca2d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a child before another child configuration node.  <a href="group___configuration.html#ga3bd36661e3aa30c51e836fa7b44ca2d5">More...</a><br /></td></tr>
<tr class="separator:ga3bd36661e3aa30c51e836fa7b44ca2d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga83e903a000d87c649ecea6945ae37e71"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga83e903a000d87c649ecea6945ae37e71">snd_config_merge</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *dst, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *src, int override)</td></tr>
<tr class="memdesc:ga83e903a000d87c649ecea6945ae37e71"><td class="mdescLeft">&#160;</td><td class="mdescRight">In-place merge of two config handles.  <a href="group___configuration.html#ga83e903a000d87c649ecea6945ae37e71">More...</a><br /></td></tr>
<tr class="separator:ga83e903a000d87c649ecea6945ae37e71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad4d69b003662e09e8206a7892e849d27"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gad4d69b003662e09e8206a7892e849d27">snd_config_remove</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config)</td></tr>
<tr class="memdesc:gad4d69b003662e09e8206a7892e849d27"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a configuration node from its tree.  <a href="group___configuration.html#gad4d69b003662e09e8206a7892e849d27">More...</a><br /></td></tr>
<tr class="separator:gad4d69b003662e09e8206a7892e849d27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2a006b942faa3335a958a7df7bcea17e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga2a006b942faa3335a958a7df7bcea17e">snd_config_delete</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config)</td></tr>
<tr class="memdesc:ga2a006b942faa3335a958a7df7bcea17e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees a configuration node.  <a href="group___configuration.html#ga2a006b942faa3335a958a7df7bcea17e">More...</a><br /></td></tr>
<tr class="separator:ga2a006b942faa3335a958a7df7bcea17e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaec120883e56ecb510e064151e0b11d51"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gaec120883e56ecb510e064151e0b11d51">snd_config_delete_compound_members</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config)</td></tr>
<tr class="memdesc:gaec120883e56ecb510e064151e0b11d51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deletes the children of a node.  <a href="group___configuration.html#gaec120883e56ecb510e064151e0b11d51">More...</a><br /></td></tr>
<tr class="separator:gaec120883e56ecb510e064151e0b11d51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac570ecbaba611ccc12bc235a1f4d0181"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gac570ecbaba611ccc12bc235a1f4d0181">snd_config_make</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *id, <a class="el" href="group___configuration.html#gaa41083e55d19c7755c5d624030e06887">snd_config_type_t</a> <a class="el" href="ump__msg_8h.html#ad44b615021ed3ccb734fcaf583ef4a03">type</a>)</td></tr>
<tr class="memdesc:gac570ecbaba611ccc12bc235a1f4d0181"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a configuration node.  <a href="group___configuration.html#gac570ecbaba611ccc12bc235a1f4d0181">More...</a><br /></td></tr>
<tr class="separator:gac570ecbaba611ccc12bc235a1f4d0181"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga838fac581e115574acc3711cad9f5877"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga838fac581e115574acc3711cad9f5877">snd_config_make_integer</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *id)</td></tr>
<tr class="memdesc:ga838fac581e115574acc3711cad9f5877"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an integer configuration node.  <a href="group___configuration.html#ga838fac581e115574acc3711cad9f5877">More...</a><br /></td></tr>
<tr class="separator:ga838fac581e115574acc3711cad9f5877"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2c27175c162fe5027e3f1b3d5420afbb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga2c27175c162fe5027e3f1b3d5420afbb">snd_config_make_integer64</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *id)</td></tr>
<tr class="memdesc:ga2c27175c162fe5027e3f1b3d5420afbb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a 64-bit-integer configuration node.  <a href="group___configuration.html#ga2c27175c162fe5027e3f1b3d5420afbb">More...</a><br /></td></tr>
<tr class="separator:ga2c27175c162fe5027e3f1b3d5420afbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8f175813bfc2556bd08fd580f05d36e6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga8f175813bfc2556bd08fd580f05d36e6">snd_config_make_real</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *id)</td></tr>
<tr class="memdesc:ga8f175813bfc2556bd08fd580f05d36e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a real number configuration node.  <a href="group___configuration.html#ga8f175813bfc2556bd08fd580f05d36e6">More...</a><br /></td></tr>
<tr class="separator:ga8f175813bfc2556bd08fd580f05d36e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6764115f489629be027b434c4e323cff"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga6764115f489629be027b434c4e323cff">snd_config_make_string</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *id)</td></tr>
<tr class="memdesc:ga6764115f489629be027b434c4e323cff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a string configuration node.  <a href="group___configuration.html#ga6764115f489629be027b434c4e323cff">More...</a><br /></td></tr>
<tr class="separator:ga6764115f489629be027b434c4e323cff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadbcce71d8d3a78709fc2a78d6f543584"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gadbcce71d8d3a78709fc2a78d6f543584">snd_config_make_pointer</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *id)</td></tr>
<tr class="memdesc:gadbcce71d8d3a78709fc2a78d6f543584"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a pointer configuration node.  <a href="group___configuration.html#gadbcce71d8d3a78709fc2a78d6f543584">More...</a><br /></td></tr>
<tr class="separator:gadbcce71d8d3a78709fc2a78d6f543584"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2ce24133c1d6828e2afe366284c61e01"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga2ce24133c1d6828e2afe366284c61e01">snd_config_make_compound</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *id, int join)</td></tr>
<tr class="memdesc:ga2ce24133c1d6828e2afe366284c61e01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an empty compound configuration node.  <a href="group___configuration.html#ga2ce24133c1d6828e2afe366284c61e01">More...</a><br /></td></tr>
<tr class="separator:ga2ce24133c1d6828e2afe366284c61e01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0f06e02ee428cb05b4efc507ce8e3cff"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga0f06e02ee428cb05b4efc507ce8e3cff">snd_config_make_path</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, const char *key, int join, int override)</td></tr>
<tr class="memdesc:ga0f06e02ee428cb05b4efc507ce8e3cff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an empty compound configuration node in the path.  <a href="group___configuration.html#ga0f06e02ee428cb05b4efc507ce8e3cff">More...</a><br /></td></tr>
<tr class="separator:ga0f06e02ee428cb05b4efc507ce8e3cff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafeb0552cbed09a3badbb5e74c7a7973d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gafeb0552cbed09a3badbb5e74c7a7973d">snd_config_imake_integer</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *id, const long value)</td></tr>
<tr class="memdesc:gafeb0552cbed09a3badbb5e74c7a7973d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an integer configuration node with the given initial value.  <a href="group___configuration.html#gafeb0552cbed09a3badbb5e74c7a7973d">More...</a><br /></td></tr>
<tr class="separator:gafeb0552cbed09a3badbb5e74c7a7973d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga04cfbfda89dc17c19a5a4076271a4d07"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga04cfbfda89dc17c19a5a4076271a4d07">snd_config_imake_integer64</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *id, const long long value)</td></tr>
<tr class="memdesc:ga04cfbfda89dc17c19a5a4076271a4d07"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a 64-bit-integer configuration node with the given initial value.  <a href="group___configuration.html#ga04cfbfda89dc17c19a5a4076271a4d07">More...</a><br /></td></tr>
<tr class="separator:ga04cfbfda89dc17c19a5a4076271a4d07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga968e5bb773dfea922b5272636b26e9c2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga968e5bb773dfea922b5272636b26e9c2">snd_config_imake_real</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *id, const double value)</td></tr>
<tr class="memdesc:ga968e5bb773dfea922b5272636b26e9c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a real number configuration node with the given initial value.  <a href="group___configuration.html#ga968e5bb773dfea922b5272636b26e9c2">More...</a><br /></td></tr>
<tr class="separator:ga968e5bb773dfea922b5272636b26e9c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa83035f79027a464bf9d5d31e0a20547"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gaa83035f79027a464bf9d5d31e0a20547">snd_config_imake_string</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *id, const char *value)</td></tr>
<tr class="memdesc:gaa83035f79027a464bf9d5d31e0a20547"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a string configuration node with the given initial value.  <a href="group___configuration.html#gaa83035f79027a464bf9d5d31e0a20547">More...</a><br /></td></tr>
<tr class="separator:gaa83035f79027a464bf9d5d31e0a20547"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5bb83b269c6e41717a3524abcec5f787"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga5bb83b269c6e41717a3524abcec5f787">snd_config_imake_safe_string</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *id, const char *value)</td></tr>
<tr class="memdesc:ga5bb83b269c6e41717a3524abcec5f787"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a string configuration node with the given initial value.  <a href="group___configuration.html#ga5bb83b269c6e41717a3524abcec5f787">More...</a><br /></td></tr>
<tr class="separator:ga5bb83b269c6e41717a3524abcec5f787"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac7c6ce28a676169fff594aa4222705b2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gac7c6ce28a676169fff594aa4222705b2">snd_config_imake_pointer</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *id, const void *value)</td></tr>
<tr class="memdesc:gac7c6ce28a676169fff594aa4222705b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a pointer configuration node with the given initial value.  <a href="group___configuration.html#gac7c6ce28a676169fff594aa4222705b2">More...</a><br /></td></tr>
<tr class="separator:gac7c6ce28a676169fff594aa4222705b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6fd3be48221cae9cee9c7245a0804d73"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga6fd3be48221cae9cee9c7245a0804d73">snd_config_set_integer</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, long value)</td></tr>
<tr class="memdesc:ga6fd3be48221cae9cee9c7245a0804d73"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the value of an integer configuration node.  <a href="group___configuration.html#ga6fd3be48221cae9cee9c7245a0804d73">More...</a><br /></td></tr>
<tr class="separator:ga6fd3be48221cae9cee9c7245a0804d73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafdb63c78c07e11194a28d591b0fbffc4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gafdb63c78c07e11194a28d591b0fbffc4">snd_config_set_integer64</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, long long value)</td></tr>
<tr class="memdesc:gafdb63c78c07e11194a28d591b0fbffc4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the value of a 64-bit-integer configuration node.  <a href="group___configuration.html#gafdb63c78c07e11194a28d591b0fbffc4">More...</a><br /></td></tr>
<tr class="separator:gafdb63c78c07e11194a28d591b0fbffc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga46c71d5d36c64f0a06ceae956a39fedc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga46c71d5d36c64f0a06ceae956a39fedc">snd_config_set_real</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, double value)</td></tr>
<tr class="memdesc:ga46c71d5d36c64f0a06ceae956a39fedc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the value of a real-number configuration node.  <a href="group___configuration.html#ga46c71d5d36c64f0a06ceae956a39fedc">More...</a><br /></td></tr>
<tr class="separator:ga46c71d5d36c64f0a06ceae956a39fedc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0f76f8ad47dce7f90580c8d59c6e44f8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga0f76f8ad47dce7f90580c8d59c6e44f8">snd_config_set_string</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *value)</td></tr>
<tr class="memdesc:ga0f76f8ad47dce7f90580c8d59c6e44f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the value of a string configuration node.  <a href="group___configuration.html#ga0f76f8ad47dce7f90580c8d59c6e44f8">More...</a><br /></td></tr>
<tr class="separator:ga0f76f8ad47dce7f90580c8d59c6e44f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga037c3bf96326bb6f5dfd340475b34fbf"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga037c3bf96326bb6f5dfd340475b34fbf">snd_config_set_pointer</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const void *value)</td></tr>
<tr class="memdesc:ga037c3bf96326bb6f5dfd340475b34fbf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the value of a pointer configuration node.  <a href="group___configuration.html#ga037c3bf96326bb6f5dfd340475b34fbf">More...</a><br /></td></tr>
<tr class="separator:ga037c3bf96326bb6f5dfd340475b34fbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac1810a11f576fe339074502f4fed4a91"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gac1810a11f576fe339074502f4fed4a91">snd_config_set_ascii</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *ascii)</td></tr>
<tr class="memdesc:gac1810a11f576fe339074502f4fed4a91"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the value of a configuration node.  <a href="group___configuration.html#gac1810a11f576fe339074502f4fed4a91">More...</a><br /></td></tr>
<tr class="separator:gac1810a11f576fe339074502f4fed4a91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabfbc36060fd4f5d1d929938443f95559"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gabfbc36060fd4f5d1d929938443f95559">snd_config_get_integer</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, long *ptr)</td></tr>
<tr class="memdesc:gabfbc36060fd4f5d1d929938443f95559"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the value of an integer configuration node.  <a href="group___configuration.html#gabfbc36060fd4f5d1d929938443f95559">More...</a><br /></td></tr>
<tr class="separator:gabfbc36060fd4f5d1d929938443f95559"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf4d9e68918f7d49d7b4b14ffbe94afc1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gaf4d9e68918f7d49d7b4b14ffbe94afc1">snd_config_get_integer64</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, long long *ptr)</td></tr>
<tr class="memdesc:gaf4d9e68918f7d49d7b4b14ffbe94afc1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the value of a 64-bit-integer configuration node.  <a href="group___configuration.html#gaf4d9e68918f7d49d7b4b14ffbe94afc1">More...</a><br /></td></tr>
<tr class="separator:gaf4d9e68918f7d49d7b4b14ffbe94afc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad4d23c0bf941527d80aeb6f991bf88c9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gad4d23c0bf941527d80aeb6f991bf88c9">snd_config_get_real</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, double *ptr)</td></tr>
<tr class="memdesc:gad4d23c0bf941527d80aeb6f991bf88c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the value of a real-number configuration node.  <a href="group___configuration.html#gad4d23c0bf941527d80aeb6f991bf88c9">More...</a><br /></td></tr>
<tr class="separator:gad4d23c0bf941527d80aeb6f991bf88c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga79738baffa6fa7722b1027ab84ac61bb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga79738baffa6fa7722b1027ab84ac61bb">snd_config_get_ireal</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, double *ptr)</td></tr>
<tr class="memdesc:ga79738baffa6fa7722b1027ab84ac61bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the value of a real or integer configuration node.  <a href="group___configuration.html#ga79738baffa6fa7722b1027ab84ac61bb">More...</a><br /></td></tr>
<tr class="separator:ga79738baffa6fa7722b1027ab84ac61bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5ab99983d1d93ddbcde9bb69a1e4f9fb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga5ab99983d1d93ddbcde9bb69a1e4f9fb">snd_config_get_string</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char **ptr)</td></tr>
<tr class="memdesc:ga5ab99983d1d93ddbcde9bb69a1e4f9fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the value of a string configuration node.  <a href="group___configuration.html#ga5ab99983d1d93ddbcde9bb69a1e4f9fb">More...</a><br /></td></tr>
<tr class="separator:ga5ab99983d1d93ddbcde9bb69a1e4f9fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga54868e0fa30458ef1c259772a8e7c6d7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga54868e0fa30458ef1c259772a8e7c6d7">snd_config_get_pointer</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const void **ptr)</td></tr>
<tr class="memdesc:ga54868e0fa30458ef1c259772a8e7c6d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the value of a pointer configuration node.  <a href="group___configuration.html#ga54868e0fa30458ef1c259772a8e7c6d7">More...</a><br /></td></tr>
<tr class="separator:ga54868e0fa30458ef1c259772a8e7c6d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa26f97e098a0dd2cd5e28299b6b6c132"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gaa26f97e098a0dd2cd5e28299b6b6c132">snd_config_get_ascii</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, char **ascii)</td></tr>
<tr class="memdesc:gaa26f97e098a0dd2cd5e28299b6b6c132"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the value of a configuration node as a string.  <a href="group___configuration.html#gaa26f97e098a0dd2cd5e28299b6b6c132">More...</a><br /></td></tr>
<tr class="separator:gaa26f97e098a0dd2cd5e28299b6b6c132"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeec157fd161a138e402c9bd243bbd408"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gaeec157fd161a138e402c9bd243bbd408">snd_config_test_id</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *id)</td></tr>
<tr class="memdesc:gaeec157fd161a138e402c9bd243bbd408"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares the id of a configuration node to a given string.  <a href="group___configuration.html#gaeec157fd161a138e402c9bd243bbd408">More...</a><br /></td></tr>
<tr class="separator:gaeec157fd161a138e402c9bd243bbd408"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafac08a29a1e04b03a22028a8c70f78bd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gafac08a29a1e04b03a22028a8c70f78bd">snd_config_save</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___output.html#ga49729cc6454539495c1f5b6e95cd474a">snd_output_t</a> *out)</td></tr>
<tr class="memdesc:gafac08a29a1e04b03a22028a8c70f78bd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dumps the contents of a configuration node or tree.  <a href="group___configuration.html#gafac08a29a1e04b03a22028a8c70f78bd">More...</a><br /></td></tr>
<tr class="separator:gafac08a29a1e04b03a22028a8c70f78bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabafb8cac2181c4c1e34b99f54421d1c6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gabafb8cac2181c4c1e34b99f54421d1c6">snd_config_search</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *key, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **result)</td></tr>
<tr class="memdesc:gabafb8cac2181c4c1e34b99f54421d1c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches for a node in a configuration tree.  <a href="group___configuration.html#gabafb8cac2181c4c1e34b99f54421d1c6">More...</a><br /></td></tr>
<tr class="separator:gabafb8cac2181c4c1e34b99f54421d1c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0f5cf4dde9399e3aadc53b4ab1d5059"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="conf_8c.html#af0f5cf4dde9399e3aadc53b4ab1d5059">snd_config_searcha</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *key, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **result)</td></tr>
<tr class="memdesc:af0f5cf4dde9399e3aadc53b4ab1d5059"><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches for a node in a configuration tree, expanding aliases.  <a href="conf_8c.html#af0f5cf4dde9399e3aadc53b4ab1d5059">More...</a><br /></td></tr>
<tr class="separator:af0f5cf4dde9399e3aadc53b4ab1d5059"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7b2f5723e44a1b69f2a8555d469803d1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga7b2f5723e44a1b69f2a8555d469803d1">snd_config_searchv</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **result,...)</td></tr>
<tr class="memdesc:ga7b2f5723e44a1b69f2a8555d469803d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches for a node in a configuration tree.  <a href="group___configuration.html#ga7b2f5723e44a1b69f2a8555d469803d1">More...</a><br /></td></tr>
<tr class="separator:ga7b2f5723e44a1b69f2a8555d469803d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11646339b1555e9a36a3da3327a0bd6a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="conf_8c.html#a11646339b1555e9a36a3da3327a0bd6a">snd_config_searchva</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **result,...)</td></tr>
<tr class="memdesc:a11646339b1555e9a36a3da3327a0bd6a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches for a node in a configuration tree, expanding aliases.  <a href="conf_8c.html#a11646339b1555e9a36a3da3327a0bd6a">More...</a><br /></td></tr>
<tr class="separator:a11646339b1555e9a36a3da3327a0bd6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95836105fb9cdb3ff6fb674d3a297fdb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="conf_8c.html#a95836105fb9cdb3ff6fb674d3a297fdb">snd_config_search_alias</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *base, const char *key, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **result)</td></tr>
<tr class="memdesc:a95836105fb9cdb3ff6fb674d3a297fdb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches for a node in a configuration tree, expanding aliases.  <a href="conf_8c.html#a95836105fb9cdb3ff6fb674d3a297fdb">More...</a><br /></td></tr>
<tr class="separator:a95836105fb9cdb3ff6fb674d3a297fdb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6a8a7b3b67b8f755ab60073bec5fd48"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="conf_8c.html#ad6a8a7b3b67b8f755ab60073bec5fd48">snd_config_search_hooks</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *key, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **result)</td></tr>
<tr class="memdesc:ad6a8a7b3b67b8f755ab60073bec5fd48"><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches for a node in a configuration tree and expands hooks.  <a href="conf_8c.html#ad6a8a7b3b67b8f755ab60073bec5fd48">More...</a><br /></td></tr>
<tr class="separator:ad6a8a7b3b67b8f755ab60073bec5fd48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28f17e8e4133a46c4d366d1e234df974"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="conf_8c.html#a28f17e8e4133a46c4d366d1e234df974">snd_config_searcha_hooks</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *key, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **result)</td></tr>
<tr class="memdesc:a28f17e8e4133a46c4d366d1e234df974"><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches for a node in a configuration tree, expanding aliases and hooks.  <a href="conf_8c.html#a28f17e8e4133a46c4d366d1e234df974">More...</a><br /></td></tr>
<tr class="separator:a28f17e8e4133a46c4d366d1e234df974"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a017faa0f6768a9481989b4f38d4514b1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="conf_8c.html#a017faa0f6768a9481989b4f38d4514b1">snd_config_searchva_hooks</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **result,...)</td></tr>
<tr class="memdesc:a017faa0f6768a9481989b4f38d4514b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches for a node in a configuration tree, expanding aliases and hooks.  <a href="conf_8c.html#a017faa0f6768a9481989b4f38d4514b1">More...</a><br /></td></tr>
<tr class="separator:a017faa0f6768a9481989b4f38d4514b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f86a23e559213fb07097637feeac70f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="conf_8c.html#a1f86a23e559213fb07097637feeac70f">snd_config_search_alias_hooks</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *base, const char *key, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **result)</td></tr>
<tr class="memdesc:a1f86a23e559213fb07097637feeac70f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches for a node in a configuration tree, using an alias and expanding hooks.  <a href="conf_8c.html#a1f86a23e559213fb07097637feeac70f">More...</a><br /></td></tr>
<tr class="separator:a1f86a23e559213fb07097637feeac70f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4008d77ad63047366463350b7726a5ec"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="conf_8c.html#a4008d77ad63047366463350b7726a5ec">snd_config_hook_load</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **dst, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *private_data)</td></tr>
<tr class="memdesc:a4008d77ad63047366463350b7726a5ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Loads and parses the given configurations files.  <a href="conf_8c.html#a4008d77ad63047366463350b7726a5ec">More...</a><br /></td></tr>
<tr class="separator:a4008d77ad63047366463350b7726a5ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac64a8c73293ee35ed3f3958d47bdc721"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="conf_8c.html#ac64a8c73293ee35ed3f3958d47bdc721">snd_config_hook_load_for_all_cards</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **dst, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *private_data)</td></tr>
<tr class="memdesc:ac64a8c73293ee35ed3f3958d47bdc721"><td class="mdescLeft">&#160;</td><td class="mdescRight">Loads and parses the given configurations files for each installed sound card.  <a href="conf_8c.html#ac64a8c73293ee35ed3f3958d47bdc721">More...</a><br /></td></tr>
<tr class="separator:ac64a8c73293ee35ed3f3958d47bdc721"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga06e80976c3c00fdc786f9b213e5c40f7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga06e80976c3c00fdc786f9b213e5c40f7">snd_config_update_r</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **_top, <a class="el" href="group___configuration.html#gab10b229189a94e3fcbac7f6ca5794cc0">snd_config_update_t</a> **_update, const char *cfgs)</td></tr>
<tr class="memdesc:ga06e80976c3c00fdc786f9b213e5c40f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates a configuration tree by rereading the configuration files (if needed).  <a href="group___configuration.html#ga06e80976c3c00fdc786f9b213e5c40f7">More...</a><br /></td></tr>
<tr class="separator:ga06e80976c3c00fdc786f9b213e5c40f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga41a3d2202cfb9016e33aa85ea70a4c9c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga41a3d2202cfb9016e33aa85ea70a4c9c">snd_config_update</a> (void)</td></tr>
<tr class="memdesc:ga41a3d2202cfb9016e33aa85ea70a4c9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates <a class="el" href="group___configuration.html#ga6cf7955d3a072d354dab4d7b536c7831" title="Configuration top-level node (the global configuration).">snd_config</a> by rereading the global configuration files (if needed).  <a href="group___configuration.html#ga41a3d2202cfb9016e33aa85ea70a4c9c">More...</a><br /></td></tr>
<tr class="separator:ga41a3d2202cfb9016e33aa85ea70a4c9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga568fcf6f45808319725ac066714b25a8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga568fcf6f45808319725ac066714b25a8">snd_config_update_ref</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **top)</td></tr>
<tr class="memdesc:ga568fcf6f45808319725ac066714b25a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates <a class="el" href="group___configuration.html#ga6cf7955d3a072d354dab4d7b536c7831" title="Configuration top-level node (the global configuration).">snd_config</a> and takes its reference.  <a href="group___configuration.html#ga568fcf6f45808319725ac066714b25a8">More...</a><br /></td></tr>
<tr class="separator:ga568fcf6f45808319725ac066714b25a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae8baa15082818d721607932bb99f318d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gae8baa15082818d721607932bb99f318d">snd_config_ref</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *cfg)</td></tr>
<tr class="memdesc:gae8baa15082818d721607932bb99f318d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Take the reference of the config tree.  <a href="group___configuration.html#gae8baa15082818d721607932bb99f318d">More...</a><br /></td></tr>
<tr class="separator:gae8baa15082818d721607932bb99f318d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac87538403cb6f8125468a1af56f42e33"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gac87538403cb6f8125468a1af56f42e33">snd_config_unref</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *cfg)</td></tr>
<tr class="memdesc:gac87538403cb6f8125468a1af56f42e33"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unreference the config tree.  <a href="group___configuration.html#gac87538403cb6f8125468a1af56f42e33">More...</a><br /></td></tr>
<tr class="separator:gac87538403cb6f8125468a1af56f42e33"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8f781ac635a0233fb2f58766a83d65cd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga8f781ac635a0233fb2f58766a83d65cd">snd_config_update_free</a> (<a class="el" href="group___configuration.html#gab10b229189a94e3fcbac7f6ca5794cc0">snd_config_update_t</a> *update)</td></tr>
<tr class="memdesc:ga8f781ac635a0233fb2f58766a83d65cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees a private update structure.  <a href="group___configuration.html#ga8f781ac635a0233fb2f58766a83d65cd">More...</a><br /></td></tr>
<tr class="separator:ga8f781ac635a0233fb2f58766a83d65cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga51dbc0ff1d9b34d753706d09d768116b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga51dbc0ff1d9b34d753706d09d768116b">snd_config_update_free_global</a> (void)</td></tr>
<tr class="memdesc:ga51dbc0ff1d9b34d753706d09d768116b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees the global configuration tree in <a class="el" href="group___configuration.html#ga6cf7955d3a072d354dab4d7b536c7831" title="Configuration top-level node (the global configuration).">snd_config</a>.  <a href="group___configuration.html#ga51dbc0ff1d9b34d753706d09d768116b">More...</a><br /></td></tr>
<tr class="separator:ga51dbc0ff1d9b34d753706d09d768116b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac8965466674c10b9a119d591ed484cef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___configuration.html#ga6c621ab8875a222e1fcb56e9feed6ec6">snd_config_iterator_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gac8965466674c10b9a119d591ed484cef">snd_config_iterator_first</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config)</td></tr>
<tr class="memdesc:gac8965466674c10b9a119d591ed484cef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator pointing to a node's first child.  <a href="group___configuration.html#gac8965466674c10b9a119d591ed484cef">More...</a><br /></td></tr>
<tr class="separator:gac8965466674c10b9a119d591ed484cef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga10c27ddc83c78680d91a167dd2f0a3cb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___configuration.html#ga6c621ab8875a222e1fcb56e9feed6ec6">snd_config_iterator_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga10c27ddc83c78680d91a167dd2f0a3cb">snd_config_iterator_next</a> (const <a class="el" href="group___configuration.html#ga6c621ab8875a222e1fcb56e9feed6ec6">snd_config_iterator_t</a> iterator)</td></tr>
<tr class="memdesc:ga10c27ddc83c78680d91a167dd2f0a3cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator pointing to the next sibling.  <a href="group___configuration.html#ga10c27ddc83c78680d91a167dd2f0a3cb">More...</a><br /></td></tr>
<tr class="separator:ga10c27ddc83c78680d91a167dd2f0a3cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac08a30bc630481f69feb2170fed4afda"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___configuration.html#ga6c621ab8875a222e1fcb56e9feed6ec6">snd_config_iterator_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gac08a30bc630481f69feb2170fed4afda">snd_config_iterator_end</a> (const <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config)</td></tr>
<tr class="memdesc:gac08a30bc630481f69feb2170fed4afda"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator that ends a node's children list.  <a href="group___configuration.html#gac08a30bc630481f69feb2170fed4afda">More...</a><br /></td></tr>
<tr class="separator:gac08a30bc630481f69feb2170fed4afda"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa91fe1d926d88041ed516a6a7293f606"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gaa91fe1d926d88041ed516a6a7293f606">snd_config_iterator_entry</a> (const <a class="el" href="group___configuration.html#ga6c621ab8875a222e1fcb56e9feed6ec6">snd_config_iterator_t</a> iterator)</td></tr>
<tr class="memdesc:gaa91fe1d926d88041ed516a6a7293f606"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the configuration node handle pointed to by an iterator.  <a href="group___configuration.html#gaa91fe1d926d88041ed516a6a7293f606">More...</a><br /></td></tr>
<tr class="separator:gaa91fe1d926d88041ed516a6a7293f606"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga30f30bd27d13fbb3527270b3fc9e1676"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga30f30bd27d13fbb3527270b3fc9e1676">snd_config_copy</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **dst, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *src)</td></tr>
<tr class="memdesc:ga30f30bd27d13fbb3527270b3fc9e1676"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a copy of a configuration node.  <a href="group___configuration.html#ga30f30bd27d13fbb3527270b3fc9e1676">More...</a><br /></td></tr>
<tr class="separator:ga30f30bd27d13fbb3527270b3fc9e1676"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1a51645a07e204d4e814d890452da558"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga1a51645a07e204d4e814d890452da558">snd_config_evaluate</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *private_data, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **result)</td></tr>
<tr class="memdesc:ga1a51645a07e204d4e814d890452da558"><td class="mdescLeft">&#160;</td><td class="mdescRight">Evaluates a configuration node at runtime.  <a href="group___configuration.html#ga1a51645a07e204d4e814d890452da558">More...</a><br /></td></tr>
<tr class="separator:ga1a51645a07e204d4e814d890452da558"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga424067becc332aa426689d2780b08c1d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga424067becc332aa426689d2780b08c1d">snd_config_expand_custom</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___configuration.html#gaec958403bc070bdfa1bcc89285614087">snd_config_expand_fcn_t</a> fcn, void *private_data, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **result)</td></tr>
<tr class="memdesc:ga424067becc332aa426689d2780b08c1d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expands a configuration node, applying arguments and functions.  <a href="group___configuration.html#ga424067becc332aa426689d2780b08c1d">More...</a><br /></td></tr>
<tr class="separator:ga424067becc332aa426689d2780b08c1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7759f41c3757ce72ee9bd118976071c2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga7759f41c3757ce72ee9bd118976071c2">snd_config_expand</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, const char *args, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *private_data, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **result)</td></tr>
<tr class="memdesc:ga7759f41c3757ce72ee9bd118976071c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expands a configuration node, applying arguments and functions.  <a href="group___configuration.html#ga7759f41c3757ce72ee9bd118976071c2">More...</a><br /></td></tr>
<tr class="separator:ga7759f41c3757ce72ee9bd118976071c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad7c23084ee4052ad33d77db6278db46f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#gad7c23084ee4052ad33d77db6278db46f">snd_config_search_definition</a> (<a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *base, const char *name, <a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **result)</td></tr>
<tr class="memdesc:gad7c23084ee4052ad33d77db6278db46f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches for a definition in a configuration tree, using aliases and expanding hooks and arguments.  <a href="group___configuration.html#gad7c23084ee4052ad33d77db6278db46f">More...</a><br /></td></tr>
<tr class="separator:gad7c23084ee4052ad33d77db6278db46f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:ga6cf7955d3a072d354dab4d7b536c7831"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___configuration.html#ga6cf7955d3a072d354dab4d7b536c7831">snd_config</a> = NULL</td></tr>
<tr class="memdesc:ga6cf7955d3a072d354dab4d7b536c7831"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configuration top-level node (the global configuration).  <a href="group___configuration.html#ga6cf7955d3a072d354dab4d7b536c7831">More...</a><br /></td></tr>
<tr class="separator:ga6cf7955d3a072d354dab4d7b536c7831"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Configuration helper functions. </p>
<dl class="section author"><dt>Author</dt><dd>Abramo Bagnara <a href="#" onclick="location.href='mai'+'lto:'+'abr'+'am'+'o@a'+'ls'+'a-p'+'ro'+'jec'+'t.'+'org'; return false;">abram<span style="display: none;">.nosp@m.</span>o@al<span style="display: none;">.nosp@m.</span>sa-pr<span style="display: none;">.nosp@m.</span>ojec<span style="display: none;">.nosp@m.</span>t.org</a> </dd>
<dd>
Jaroslav Kysela <a href="#" onclick="location.href='mai'+'lto:'+'per'+'ex'+'@pe'+'re'+'x.c'+'z'; return false;">perex<span style="display: none;">.nosp@m.</span>@per<span style="display: none;">.nosp@m.</span>ex.cz</a> </dd></dl>
<dl class="section date"><dt>Date</dt><dd>2000-2001</dd></dl>
<p>Tree based, full nesting configuration functions.</p>
<p>See the <a class="el" href="conf.html">Configuration files</a> page for more details. </p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a8b857484628b5b4cbd2ac60503d4f80e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b857484628b5b4cbd2ac60503d4f80e">&#9670;&nbsp;</a></span>ALSA_CONFIG_PATH_VAR</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ALSA_CONFIG_PATH_VAR&#160;&#160;&#160;&quot;ALSA_CONFIG_PATH&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>The name of the environment variable containing the files list for <a class="el" href="group___configuration.html#ga41a3d2202cfb9016e33aa85ea70a4c9c" title="Updates snd_config by rereading the global configuration files (if needed).">snd_config_update</a>. </p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a281182963641e7cd5975f56faad6ff14"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a281182963641e7cd5975f56faad6ff14">&#9670;&nbsp;</a></span>snd_config_get_type_ascii()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_config_get_type_ascii </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>ascii</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#gaa41083e55d19c7755c5d624030e06887">snd_config_type_t</a> *&#160;</td>
          <td class="paramname"><em>type</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Converts an ASCII string to a configuration node type. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">ascii</td><td>A string containing a configuration node type. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">type</td><td>The node type corresponding to <em>ascii</em>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Zero if successful, otherwise a negative error code.</dd></dl>
<p>This function recognizes at least the following node types: </p><dl>
<dt>integer&lt;dt&gt;::SND_CONFIG_TYPE_INTEGER </dt>
<dd></dd>
<dt>integer64&lt;dt&gt;::SND_CONFIG_TYPE_INTEGER64 </dt>
<dd></dd>
<dt>real&lt;dt&gt;::SND_CONFIG_TYPE_REAL </dt>
<dd></dd>
<dt>string&lt;dt&gt;::SND_CONFIG_TYPE_STRING </dt>
<dd></dd>
<dt>compound&lt;dt&gt;::SND_CONFIG_TYPE_COMPOUND </dt>
<dd></dd>
</dl>
<dl class="section user"><dt>Errors:</dt><dd><dl>
<dt>-EINVAL</dt>
<dd>Unknown note type in <em>type</em>. </dd>
</dl>
</dd></dl>

</div>
</div>
<a id="a4008d77ad63047366463350b7726a5ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4008d77ad63047366463350b7726a5ec">&#9670;&nbsp;</a></span>snd_config_hook_load()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_config_hook_load </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>root</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>config</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **&#160;</td>
          <td class="paramname"><em>dst</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>private_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Loads and parses the given configurations files. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">root</td><td>Handle to the root configuration node. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">config</td><td>Handle to the configuration node for this hook. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dst</td><td>The function puts the handle to the configuration node loaded from the file(s) at the address specified by <em>dst</em>. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">private_data</td><td>Handle to the private data configuration node. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Zero if successful, otherwise a negative error code.</dd></dl>
<p>See <a class="el" href="confhooks.html">Hooks in configuration files</a> for an example. </p>

</div>
</div>
<a id="ac64a8c73293ee35ed3f3958d47bdc721"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac64a8c73293ee35ed3f3958d47bdc721">&#9670;&nbsp;</a></span>snd_config_hook_load_for_all_cards()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_config_hook_load_for_all_cards </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>root</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>config</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **&#160;</td>
          <td class="paramname"><em>dst</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>private_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Loads and parses the given configurations files for each installed sound card. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">root</td><td>Handle to the root configuration node. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">config</td><td>Handle to the configuration node for this hook. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">dst</td><td>The function puts the handle to the configuration node loaded from the file(s) at the address specified by <em>dst</em>. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">private_data</td><td>Handle to the private data configuration node. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Zero if successful, otherwise a negative error code.</dd></dl>
<p>This function works like <a class="el" href="conf_8c.html#a4008d77ad63047366463350b7726a5ec" title="Loads and parses the given configurations files.">snd_config_hook_load</a>, but the files are loaded once for each sound card. The driver name is available with the <code>private_string</code> function to customize the file name. </p>

</div>
</div>
<a id="a95836105fb9cdb3ff6fb674d3a297fdb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a95836105fb9cdb3ff6fb674d3a297fdb">&#9670;&nbsp;</a></span>snd_config_search_alias()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_config_search_alias </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>config</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **&#160;</td>
          <td class="paramname"><em>result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Searches for a node in a configuration tree, expanding aliases. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">config</td><td>Handle to the root of the configuration (sub)tree to search. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">base</td><td>Search key base, or <code>NULL</code>. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Search key suffix. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>When <em>result</em> != <code>NULL</code>, the function puts the handle to the node found at the address specified by <em>result</em>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Zero if successful, otherwise a negative error code.</dd></dl>
<p>This functions searches for a child node of <em>config</em>, allowing aliases, like <a class="el" href="conf_8c.html#af0f5cf4dde9399e3aadc53b4ab1d5059" title="Searches for a node in a configuration tree, expanding aliases.">snd_config_searcha</a>. However, alias definitions are searched below <em>config</em> (there is no separate <em>root</em> parameter), and <em>base</em> specifies a seach key that identifies a compound node that is used to search for an alias definitions that is not found directly below <em>config</em> and that does not contain a period. In other words, when <code>"id"</code> is not found in <em>config</em>, this function also tries <code>"base.id"</code>.</p>
<dl class="section user"><dt>Errors:</dt><dd><dl>
<dt>-ENOENT</dt>
<dd>An id in <em>key</em> or an alias id does not exist. </dd>
<dt>-ENOENT</dt>
<dd><em>config</em> or one of its child nodes to be searched is not a compound or string node. </dd>
</dl>
</dd></dl>

</div>
</div>
<a id="a1f86a23e559213fb07097637feeac70f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1f86a23e559213fb07097637feeac70f">&#9670;&nbsp;</a></span>snd_config_search_alias_hooks()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_config_search_alias_hooks </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>config</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **&#160;</td>
          <td class="paramname"><em>result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Searches for a node in a configuration tree, using an alias and expanding hooks. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">config</td><td>Handle to the root of the configuration (sub)tree to search. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">base</td><td>Search key base, or <code>NULL</code>. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Search key suffix. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>The function puts the handle to the node found at the address specified by <em>result</em>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Zero if successful, otherwise a negative error code.</dd></dl>
<p>This functions searches for a child node of <em>config</em>, allowing aliases, like <a class="el" href="conf_8c.html#a95836105fb9cdb3ff6fb674d3a297fdb" title="Searches for a node in a configuration tree, expanding aliases.">snd_config_search_alias</a>, and expanding hooks, like <a class="el" href="conf_8c.html#ad6a8a7b3b67b8f755ab60073bec5fd48" title="Searches for a node in a configuration tree and expands hooks.">snd_config_search_hooks</a>.</p>
<dl class="section user"><dt>Errors:</dt><dd><dl>
<dt>-ENOENT</dt>
<dd>An id in <em>key</em> or an alias id does not exist. </dd>
<dt>-ENOENT</dt>
<dd><em>config</em> or one of its child nodes to be searched is not a compound node. </dd>
</dl>
Additionally, any errors encountered when parsing the hook definitions or returned by the hook functions. </dd></dl>

</div>
</div>
<a id="ad6a8a7b3b67b8f755ab60073bec5fd48"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad6a8a7b3b67b8f755ab60073bec5fd48">&#9670;&nbsp;</a></span>snd_config_search_hooks()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_config_search_hooks </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>config</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **&#160;</td>
          <td class="paramname"><em>result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Searches for a node in a configuration tree and expands hooks. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">config</td><td>Handle to the root of the configuration (sub)tree to search. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Search key: one or more node keys, separated with dots. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>The function puts the handle to the node found at the address specified by <em>result</em>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Zero if successful, otherwise a negative error code.</dd></dl>
<p>This functions searches for a child node of <em>config</em> like <a class="el" href="group___configuration.html#gabafb8cac2181c4c1e34b99f54421d1c6" title="Searches for a node in a configuration tree.">snd_config_search</a>, but any compound nodes to be searched that contain hooks are modified by the respective hook functions.</p>
<dl class="section user"><dt>Errors:</dt><dd><dl>
<dt>-ENOENT</dt>
<dd>An id in <em>key</em> does not exist. </dd>
<dt>-ENOENT</dt>
<dd><em>config</em> or one of its child nodes to be searched is not a compound node. </dd>
</dl>
Additionally, any errors encountered when parsing the hook definitions or returned by the hook functions. </dd></dl>

</div>
</div>
<a id="af0f5cf4dde9399e3aadc53b4ab1d5059"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af0f5cf4dde9399e3aadc53b4ab1d5059">&#9670;&nbsp;</a></span>snd_config_searcha()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_config_searcha </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>root</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>config</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **&#160;</td>
          <td class="paramname"><em>result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Searches for a node in a configuration tree, expanding aliases. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">root</td><td>Handle to the root configuration node containing alias definitions. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">config</td><td>Handle to the root of the configuration (sub)tree to search. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Search key: one or more node keys, separated with dots. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>When <em>result</em> != <code>NULL</code>, the function puts the handle to the node found at the address specified by <em>result</em>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Zero if successful, otherwise a negative error code.</dd></dl>
<p>This functions searches for a child node of <em>config</em> like <a class="el" href="group___configuration.html#gabafb8cac2181c4c1e34b99f54421d1c6" title="Searches for a node in a configuration tree.">snd_config_search</a>. However, any compound node can also be identified by an alias, which is a string node whose value is taken as the id of a compound node below <em>root</em>.</p>
<p><em>root</em> must be a compound node. <em>root</em> and <em>config</em> may be the same node.</p>
<p>For example, with the following configuration, the call </p><div class="fragment"><div class="line"><a class="code" href="conf_8c.html#af0f5cf4dde9399e3aadc53b4ab1d5059">snd_config_searcha</a>(root, config, <span class="stringliteral">&quot;a.b.c.d&quot;</span>, &amp;result);</div>
<div class="ttc" id="aconf_8c_html_af0f5cf4dde9399e3aadc53b4ab1d5059"><div class="ttname"><a href="conf_8c.html#af0f5cf4dde9399e3aadc53b4ab1d5059">snd_config_searcha</a></div><div class="ttdeci">int snd_config_searcha(snd_config_t *root, snd_config_t *config, const char *key, snd_config_t **result)</div><div class="ttdoc">Searches for a node in a configuration tree, expanding aliases.</div><div class="ttdef"><b>Definition:</b> conf.c:3683</div></div>
</div><!-- fragment --><p> would return the node with id <code>d:</code> </p><div class="fragment"><div class="line">config {</div>
<div class="line">    a {</div>
<div class="line">        b bb</div>
<div class="line">    }</div>
<div class="line">}</div>
<div class="line">root {</div>
<div class="line">    bb {</div>
<div class="line">        c cc</div>
<div class="line">    }</div>
<div class="line">    cc ccc</div>
<div class="line">    ccc {</div>
<div class="line">        d {</div>
<div class="line">            x <span class="stringliteral">&quot;icks&quot;</span></div>
<div class="line">        }</div>
<div class="line">    }</div>
<div class="line">}</div>
</div><!-- fragment --><dl class="section user"><dt>Errors:</dt><dd><dl>
<dt>-ENOENT</dt>
<dd>An id in <em>key</em> or an alias id does not exist. </dd>
<dt>-ENOENT</dt>
<dd><em>config</em> or one of its child nodes to be searched is not a compound or string node. </dd>
</dl>
</dd></dl>

</div>
</div>
<a id="a28f17e8e4133a46c4d366d1e234df974"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a28f17e8e4133a46c4d366d1e234df974">&#9670;&nbsp;</a></span>snd_config_searcha_hooks()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_config_searcha_hooks </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>root</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>config</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **&#160;</td>
          <td class="paramname"><em>result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Searches for a node in a configuration tree, expanding aliases and hooks. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">root</td><td>Handle to the root configuration node containing alias definitions. </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">config</td><td>Handle to the root of the configuration (sub)tree to search. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Search key: one or more node keys, separated with dots. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>The function puts the handle to the node found at the address specified by <em>result</em>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Zero if successful, otherwise a negative error code.</dd></dl>
<p>This function searches for a child node of <em>config</em>, allowing aliases, like <a class="el" href="conf_8c.html#af0f5cf4dde9399e3aadc53b4ab1d5059" title="Searches for a node in a configuration tree, expanding aliases.">snd_config_searcha</a>, and expanding hooks, like <a class="el" href="conf_8c.html#ad6a8a7b3b67b8f755ab60073bec5fd48" title="Searches for a node in a configuration tree and expands hooks.">snd_config_search_hooks</a>.</p>
<dl class="section user"><dt>Errors:</dt><dd><dl>
<dt>-ENOENT</dt>
<dd>An id in <em>key</em> or an alias id does not exist. </dd>
<dt>-ENOENT</dt>
<dd><em>config</em> or one of its child nodes to be searched is not a compound node. </dd>
</dl>
Additionally, any errors encountered when parsing the hook definitions or returned by the hook functions. </dd></dl>

</div>
</div>
<a id="a11646339b1555e9a36a3da3327a0bd6a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a11646339b1555e9a36a3da3327a0bd6a">&#9670;&nbsp;</a></span>snd_config_searchva()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_config_searchva </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>root</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>config</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **&#160;</td>
          <td class="paramname"><em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Searches for a node in a configuration tree, expanding aliases. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">root</td><td>Handle to the root configuration node containing alias definitions. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">config</td><td>Handle to the root of the configuration (sub)tree to search. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>When <em>result</em> != <code>NULL</code>, the function puts the handle to the node found at the address specified by <em>result</em>. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">...</td><td>One or more concatenated dot separated search keys, terminated with <code>NULL</code>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Zero if successful, otherwise a negative error code.</dd></dl>
<p>This function searches for a child node of <em>config</em>, allowing aliases, like <a class="el" href="conf_8c.html#af0f5cf4dde9399e3aadc53b4ab1d5059" title="Searches for a node in a configuration tree, expanding aliases.">snd_config_searcha</a>, but the search key is the concatenation of all passed seach key strings, like with <a class="el" href="group___configuration.html#ga7b2f5723e44a1b69f2a8555d469803d1" title="Searches for a node in a configuration tree.">snd_config_searchv</a>.</p>
<dl class="section user"><dt>Errors:</dt><dd><dl>
<dt>-ENOENT</dt>
<dd>An id in a search key does not exist. </dd>
<dt>-ENOENT</dt>
<dd><em>config</em> or one of its child nodes to be searched is not a compound or string node. </dd>
</dl>
</dd></dl>

</div>
</div>
<a id="a017faa0f6768a9481989b4f38d4514b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a017faa0f6768a9481989b4f38d4514b1">&#9670;&nbsp;</a></span>snd_config_searchva_hooks()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_config_searchva_hooks </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>root</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>config</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___configuration.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **&#160;</td>
          <td class="paramname"><em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Searches for a node in a configuration tree, expanding aliases and hooks. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">root</td><td>Handle to the root configuration node containing alias definitions. </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">config</td><td>Handle to the root of the configuration (sub)tree to search. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>The function puts the handle to the node found at the address specified by <em>result</em>. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">...</td><td>One or more concatenated dot separated search keys, terminated with <code>NULL</code>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Zero if successful, otherwise a negative error code.</dd></dl>
<p>This function searches for a child node of <em>config</em>, allowing aliases and expanding hooks like <a class="el" href="conf_8c.html#a28f17e8e4133a46c4d366d1e234df974" title="Searches for a node in a configuration tree, expanding aliases and hooks.">snd_config_searcha_hooks</a>, but the search key is the concatenation of all passed seach key strings, like with <a class="el" href="group___configuration.html#ga7b2f5723e44a1b69f2a8555d469803d1" title="Searches for a node in a configuration tree.">snd_config_searchv</a>.</p>
<dl class="section user"><dt>Errors:</dt><dd><dl>
<dt>-ENOENT</dt>
<dd>An id in <em>key</em> or an alias id does not exist. </dd>
<dt>-ENOENT</dt>
<dd><em>config</em> or one of its child nodes to be searched is not a compound node. </dd>
</dl>
Additionally, any errors encountered when parsing the hook definitions or returned by the hook functions. </dd></dl>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>