Sophie

Sophie

distrib > Mageia > 5 > i586 > media > core-release > by-pkgid > 406d9b580cc28afca9442eab7324087d > files > 22

libalsa2-docs-1.0.28-1.mga5.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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.8.7"/>
<title>ALSA project - the C library reference: /home/iurt/rpmbuild/BUILD/alsa-lib-1.0.28/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/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</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 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.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Pages</a></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>  </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>
<tr class="memitem:aa7ae5d3b32a1ec3a9aa0456a5a2f9091"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="conf_8c.html#aa7ae5d3b32a1ec3a9aa0456a5a2f9091">ALSA_CONFIG_PATH_DEFAULT</a>&#160;&#160;&#160;ALSA_CONFIG_DIR &quot;/alsa.conf&quot;</td></tr>
<tr class="separator:aa7ae5d3b32a1ec3a9aa0456a5a2f9091"><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:a0c4acd2de7999ad6e477d398662485c2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="conf_8c.html#a0c4acd2de7999ad6e477d398662485c2">snd_config_substitute</a> (<a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *dst, <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *src)</td></tr>
<tr class="memdesc:a0c4acd2de7999ad6e477d398662485c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Substitutes one configuration node to another.  <a href="#a0c4acd2de7999ad6e477d398662485c2">More...</a><br /></td></tr>
<tr class="separator:a0c4acd2de7999ad6e477d398662485c2"><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___config.html#gaa41083e55d19c7755c5d624030e06887">snd_config_type_t</a> *type)</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="#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___config.html#gaa41083e55d19c7755c5d624030e06887">snd_config_type_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___config.html#ga6def4c43ce325abaa3ddfba5a4f4d138">snd_config_get_type</a> (const <a class="el" href="group___config.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___config.html#ga6def4c43ce325abaa3ddfba5a4f4d138">More...</a><br /></td></tr>
<tr class="separator:ga6def4c43ce325abaa3ddfba5a4f4d138"><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___config.html#gae366751e8ea98aeb69f9ef876f7b949c">snd_config_get_id</a> (const <a class="el" href="group___config.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___config.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___config.html#ga550948931d44695b6d8e8f148f87cb54">snd_config_set_id</a> (<a class="el" href="group___config.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___config.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___config.html#gaf563d57ea9d576a94578368a3d2382c3">snd_config_top</a> (<a class="el" href="group___config.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___config.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___config.html#ga51f79d1f24a519e126415c72210525b0">snd_config_load</a> (<a class="el" href="group___config.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___config.html#ga51f79d1f24a519e126415c72210525b0">More...</a><br /></td></tr>
<tr class="separator:ga51f79d1f24a519e126415c72210525b0"><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___config.html#ga27334922bab8391aa2ef1813f48f4d70">snd_config_load_override</a> (<a class="el" href="group___config.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___config.html#ga27334922bab8391aa2ef1813f48f4d70">More...</a><br /></td></tr>
<tr class="separator:ga27334922bab8391aa2ef1813f48f4d70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf62dd825828c05f1d63a62eee7046080"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___config.html#gaf62dd825828c05f1d63a62eee7046080">snd_config_add</a> (<a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *parent, <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *child)</td></tr>
<tr class="memdesc:gaf62dd825828c05f1d63a62eee7046080"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a child to a compound configuration node.  <a href="group___config.html#gaf62dd825828c05f1d63a62eee7046080">More...</a><br /></td></tr>
<tr class="separator:gaf62dd825828c05f1d63a62eee7046080"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4d69b003662e09e8206a7892e849d27"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="conf_8c.html#ad4d69b003662e09e8206a7892e849d27">snd_config_remove</a> (<a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config)</td></tr>
<tr class="memdesc:ad4d69b003662e09e8206a7892e849d27"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a configuration node from its tree.  <a href="#ad4d69b003662e09e8206a7892e849d27">More...</a><br /></td></tr>
<tr class="separator:ad4d69b003662e09e8206a7892e849d27"><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___config.html#ga2a006b942faa3335a958a7df7bcea17e">snd_config_delete</a> (<a class="el" href="group___config.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___config.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___config.html#gaec120883e56ecb510e064151e0b11d51">snd_config_delete_compound_members</a> (const <a class="el" href="group___config.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___config.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___config.html#gac570ecbaba611ccc12bc235a1f4d0181">snd_config_make</a> (<a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **config, const char *id, <a class="el" href="group___config.html#gaa41083e55d19c7755c5d624030e06887">snd_config_type_t</a> type)</td></tr>
<tr class="memdesc:gac570ecbaba611ccc12bc235a1f4d0181"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a configuration node.  <a href="group___config.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___config.html#ga838fac581e115574acc3711cad9f5877">snd_config_make_integer</a> (<a class="el" href="group___config.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___config.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___config.html#ga2c27175c162fe5027e3f1b3d5420afbb">snd_config_make_integer64</a> (<a class="el" href="group___config.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___config.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___config.html#ga8f175813bfc2556bd08fd580f05d36e6">snd_config_make_real</a> (<a class="el" href="group___config.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___config.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___config.html#ga6764115f489629be027b434c4e323cff">snd_config_make_string</a> (<a class="el" href="group___config.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___config.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___config.html#gadbcce71d8d3a78709fc2a78d6f543584">snd_config_make_pointer</a> (<a class="el" href="group___config.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___config.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___config.html#ga2ce24133c1d6828e2afe366284c61e01">snd_config_make_compound</a> (<a class="el" href="group___config.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___config.html#ga2ce24133c1d6828e2afe366284c61e01">More...</a><br /></td></tr>
<tr class="separator:ga2ce24133c1d6828e2afe366284c61e01"><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___config.html#gafeb0552cbed09a3badbb5e74c7a7973d">snd_config_imake_integer</a> (<a class="el" href="group___config.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___config.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___config.html#ga04cfbfda89dc17c19a5a4076271a4d07">snd_config_imake_integer64</a> (<a class="el" href="group___config.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___config.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___config.html#ga968e5bb773dfea922b5272636b26e9c2">snd_config_imake_real</a> (<a class="el" href="group___config.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___config.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___config.html#gaa83035f79027a464bf9d5d31e0a20547">snd_config_imake_string</a> (<a class="el" href="group___config.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___config.html#gaa83035f79027a464bf9d5d31e0a20547">More...</a><br /></td></tr>
<tr class="separator:gaa83035f79027a464bf9d5d31e0a20547"><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___config.html#gac7c6ce28a676169fff594aa4222705b2">snd_config_imake_pointer</a> (<a class="el" href="group___config.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___config.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___config.html#ga6fd3be48221cae9cee9c7245a0804d73">snd_config_set_integer</a> (<a class="el" href="group___config.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___config.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___config.html#gafdb63c78c07e11194a28d591b0fbffc4">snd_config_set_integer64</a> (<a class="el" href="group___config.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___config.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___config.html#ga46c71d5d36c64f0a06ceae956a39fedc">snd_config_set_real</a> (<a class="el" href="group___config.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___config.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___config.html#ga0f76f8ad47dce7f90580c8d59c6e44f8">snd_config_set_string</a> (<a class="el" href="group___config.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___config.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___config.html#ga037c3bf96326bb6f5dfd340475b34fbf">snd_config_set_pointer</a> (<a class="el" href="group___config.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___config.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___config.html#gac1810a11f576fe339074502f4fed4a91">snd_config_set_ascii</a> (<a class="el" href="group___config.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___config.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___config.html#gabfbc36060fd4f5d1d929938443f95559">snd_config_get_integer</a> (const <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, long *<a class="el" href="seq__event_8h.html#add9af9569af79ec26dd741fb226b38ba">ptr</a>)</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___config.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___config.html#gaf4d9e68918f7d49d7b4b14ffbe94afc1">snd_config_get_integer64</a> (const <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, long long *<a class="el" href="seq__event_8h.html#add9af9569af79ec26dd741fb226b38ba">ptr</a>)</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___config.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___config.html#gad4d23c0bf941527d80aeb6f991bf88c9">snd_config_get_real</a> (const <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, double *<a class="el" href="seq__event_8h.html#add9af9569af79ec26dd741fb226b38ba">ptr</a>)</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___config.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___config.html#ga79738baffa6fa7722b1027ab84ac61bb">snd_config_get_ireal</a> (const <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, double *<a class="el" href="seq__event_8h.html#add9af9569af79ec26dd741fb226b38ba">ptr</a>)</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___config.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___config.html#ga5ab99983d1d93ddbcde9bb69a1e4f9fb">snd_config_get_string</a> (const <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char **<a class="el" href="seq__event_8h.html#add9af9569af79ec26dd741fb226b38ba">ptr</a>)</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___config.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___config.html#ga54868e0fa30458ef1c259772a8e7c6d7">snd_config_get_pointer</a> (const <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const void **<a class="el" href="seq__event_8h.html#add9af9569af79ec26dd741fb226b38ba">ptr</a>)</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___config.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___config.html#gaa26f97e098a0dd2cd5e28299b6b6c132">snd_config_get_ascii</a> (const <a class="el" href="group___config.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___config.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___config.html#gaeec157fd161a138e402c9bd243bbd408">snd_config_test_id</a> (const <a class="el" href="group___config.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___config.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___config.html#gafac08a29a1e04b03a22028a8c70f78bd">snd_config_save</a> (<a class="el" href="group___config.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___config.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___config.html#gabafb8cac2181c4c1e34b99f54421d1c6">snd_config_search</a> (<a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *key, <a class="el" href="group___config.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___config.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___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *key, <a class="el" href="group___config.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="#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___config.html#ga7b2f5723e44a1b69f2a8555d469803d1">snd_config_searchv</a> (<a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___config.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___config.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___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___config.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="#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___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *base, const char *key, <a class="el" href="group___config.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="#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___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *key, <a class="el" href="group___config.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="#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___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *key, <a class="el" href="group___config.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="#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___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___config.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="#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___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *base, const char *key, <a class="el" href="group___config.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="#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___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **dst, <a class="el" href="group___config.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="#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___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **dst, <a class="el" href="group___config.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="#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___config.html#ga06e80976c3c00fdc786f9b213e5c40f7">snd_config_update_r</a> (<a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **_top, <a class="el" href="group___config.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___config.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___config.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___config.html#ga6cf7955d3a072d354dab4d7b536c7831" title="Configuration top-level node (the global configuration). ">snd_config</a> by rereading the global configuration files (if needed).  <a href="group___config.html#ga41a3d2202cfb9016e33aa85ea70a4c9c">More...</a><br /></td></tr>
<tr class="separator:ga41a3d2202cfb9016e33aa85ea70a4c9c"><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___config.html#ga8f781ac635a0233fb2f58766a83d65cd">snd_config_update_free</a> (<a class="el" href="group___config.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___config.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___config.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___config.html#ga6cf7955d3a072d354dab4d7b536c7831" title="Configuration top-level node (the global configuration). ">snd_config</a>.  <a href="group___config.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___config.html#ga6c621ab8875a222e1fcb56e9feed6ec6">snd_config_iterator_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___config.html#gac8965466674c10b9a119d591ed484cef">snd_config_iterator_first</a> (const <a class="el" href="group___config.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___config.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___config.html#ga6c621ab8875a222e1fcb56e9feed6ec6">snd_config_iterator_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___config.html#ga10c27ddc83c78680d91a167dd2f0a3cb">snd_config_iterator_next</a> (const <a class="el" href="group___config.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___config.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___config.html#ga6c621ab8875a222e1fcb56e9feed6ec6">snd_config_iterator_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___config.html#gac08a30bc630481f69feb2170fed4afda">snd_config_iterator_end</a> (const <a class="el" href="group___config.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___config.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___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___config.html#gaa91fe1d926d88041ed516a6a7293f606">snd_config_iterator_entry</a> (const <a class="el" href="group___config.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___config.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___config.html#ga30f30bd27d13fbb3527270b3fc9e1676">snd_config_copy</a> (<a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> **dst, <a class="el" href="group___config.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___config.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___config.html#ga1a51645a07e204d4e814d890452da558">snd_config_evaluate</a> (<a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *private_data, <a class="el" href="group___config.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___config.html#ga1a51645a07e204d4e814d890452da558">More...</a><br /></td></tr>
<tr class="separator:ga1a51645a07e204d4e814d890452da558"><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___config.html#ga7759f41c3757ce72ee9bd118976071c2">snd_config_expand</a> (<a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *root, const char *args, <a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *private_data, <a class="el" href="group___config.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___config.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___config.html#gad7c23084ee4052ad33d77db6278db46f">snd_config_search_definition</a> (<a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *config, const char *base, const char *name, <a class="el" href="group___config.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___config.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___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___config.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___config.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 class="anchor" id="aa7ae5d3b32a1ec3a9aa0456a5a2f9091"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ALSA_CONFIG_PATH_DEFAULT&#160;&#160;&#160;ALSA_CONFIG_DIR &quot;/alsa.conf&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>The name of the default files used by <a class="el" href="group___config.html#ga41a3d2202cfb9016e33aa85ea70a4c9c" title="Updates snd_config by rereading the global configuration files (if needed). ">snd_config_update</a>. </p>

</div>
</div>
<a class="anchor" id="a8b857484628b5b4cbd2ac60503d4f80e"></a>
<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___config.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 class="anchor" id="a281182963641e7cd5975f56faad6ff14"></a>
<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___config.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 class="anchor" id="a4008d77ad63047366463350b7726a5ec"></a>
<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___config.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___config.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___config.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___config.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 class="anchor" id="ac64a8c73293ee35ed3f3958d47bdc721"></a>
<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___config.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___config.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___config.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___config.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 class="anchor" id="ad4d69b003662e09e8206a7892e849d27"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_config_remove </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>config</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Removes a configuration node from its tree. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">config</td><td>Handle to the configuration node to be removed. </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 makes <em>config</em> a top-level node, i.e., if <em>config</em> has a parent, then <em>config</em> is removed from the list of the parent's children.</p>
<p>This functions does <em>not</em> free the removed node.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group___config.html#ga2a006b942faa3335a958a7df7bcea17e" title="Frees a configuration node. ">snd_config_delete</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a95836105fb9cdb3ff6fb674d3a297fdb"></a>
<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___config.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___config.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 class="anchor" id="a1f86a23e559213fb07097637feeac70f"></a>
<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___config.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___config.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 class="anchor" id="ad6a8a7b3b67b8f755ab60073bec5fd48"></a>
<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___config.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___config.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___config.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 class="anchor" id="af0f5cf4dde9399e3aadc53b4ab1d5059"></a>
<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___config.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___config.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___config.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___config.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><!-- 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 class="anchor" id="a28f17e8e4133a46c4d366d1e234df974"></a>
<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___config.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___config.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___config.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 class="anchor" id="a11646339b1555e9a36a3da3327a0bd6a"></a>
<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___config.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___config.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___config.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___config.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 class="anchor" id="a017faa0f6768a9481989b4f38d4514b1"></a>
<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___config.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___config.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___config.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___config.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>
<a class="anchor" id="a0c4acd2de7999ad6e477d398662485c2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_config_substitute </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___config.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___config.html#ga1c20905af775ae77d04d1a5696f67985">snd_config_t</a> *&#160;</td>
          <td class="paramname"><em>src</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Substitutes one configuration node to another. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">dst</td><td>Handle to the destination node. </td></tr>
    <tr><td class="paramname">src</td><td>Handle to the source node. Must not be the same as <em>dst</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>If both nodes are compounds, the source compound node members are appended to the destination compound node.</p>
<p>If the destination node is a compound and the source node is an ordinary type, the compound members are deleted (including their contents).</p>
<p>Otherwise, the source node's value replaces the destination node's value.</p>
<p>In any case, a successful call to this function frees the source node. </p>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Jun 18 2014 05:47:49 for ALSA project - the C library reference by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>