Sophie

Sophie

distrib > Mageia > 7 > armv7hl > by-pkgid > eb6f01499a5d4428f90019094419e1c5 > files > 299

liblirc-devel-0.10.1-7.mga7.armv7hl.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>LIRC libraries: Ciniparser</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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="diode-2.gif"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">LIRC libraries
   </div>
   <div id="projectbrief">LinuxInfraredRemoteControl</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('group__ciniparser.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

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

<div class="header">
  <div class="summary">
<a href="#files">Files</a> &#124;
<a href="#nested-classes">Classes</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Ciniparser</div>  </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
Files</h2></td></tr>
<tr class="memitem:ciniparser_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ciniparser_8c.html">ciniparser.c</a></td></tr>
<tr class="memdesc:ciniparser_8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parser for ini files. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ciniparser_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ciniparser_8h.html">ciniparser.h</a></td></tr>
<tr class="memdesc:ciniparser_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parser for ini files. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:dictionary_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dictionary_8c.html">dictionary.c</a></td></tr>
<tr class="memdesc:dictionary_8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implements a dictionary for string variables. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:dictionary_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dictionary_8h.html">dictionary.h</a></td></tr>
<tr class="memdesc:dictionary_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implements a dictionary for string variables.This module implements a simple dictionary object, i.e. a list of string/string associations. This object is useful to store e.g. information retrieved from a configuration file (ini files). <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__dictionary__.html">_dictionary_</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dictionary object.  <a href="struct__dictionary__.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:gaeb84e295ec3307b215991d4bf88bceb7"><td class="memItemLeft" align="right" valign="top"><a id="gaeb84e295ec3307b215991d4bf88bceb7"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>ASCIILINESZ</b>&#160;&#160;&#160;(1024)</td></tr>
<tr class="separator:gaeb84e295ec3307b215991d4bf88bceb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafd7ba4a10fc951dcb65fa2b001afb7a4"><td class="memItemLeft" align="right" valign="top"><a id="gafd7ba4a10fc951dcb65fa2b001afb7a4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>INI_INVALID_KEY</b>&#160;&#160;&#160;((char*)NULL)</td></tr>
<tr class="separator:gafd7ba4a10fc951dcb65fa2b001afb7a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf2c47d7df2f20bb2418bae0cc4433667"><td class="memItemLeft" align="right" valign="top"><a id="gaf2c47d7df2f20bb2418bae0cc4433667"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>ciniparser_getstr</b>(d,  k)&#160;&#160;&#160;<a class="el" href="group__ciniparser.html#gaeb8a3530ebcbacf04b16a06c2353699a">ciniparser_getstring</a>(d, k, NULL)</td></tr>
<tr class="separator:gaf2c47d7df2f20bb2418bae0cc4433667"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad7856ddf91b24bc6f67d013436806b7f"><td class="memItemLeft" align="right" valign="top"><a id="gad7856ddf91b24bc6f67d013436806b7f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>ciniparser_setstr</b>&#160;&#160;&#160;<a class="el" href="group__ciniparser.html#ga2890386ff0d944066f74cecff3cd0922">ciniparser_setstring</a></td></tr>
<tr class="separator:gad7856ddf91b24bc6f67d013436806b7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga071228a4e1c69ac2eec59e9c1385185a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga071228a4e1c69ac2eec59e9c1385185a">MAXVALSZ</a>&#160;&#160;&#160;1024</td></tr>
<tr class="memdesc:ga071228a4e1c69ac2eec59e9c1385185a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum value size for integers and doubles.  <a href="#ga071228a4e1c69ac2eec59e9c1385185a">More...</a><br /></td></tr>
<tr class="separator:ga071228a4e1c69ac2eec59e9c1385185a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaf4ab97b3163920286cb932a3faedf86"><td class="memItemLeft" align="right" valign="top"><a id="gaaf4ab97b3163920286cb932a3faedf86"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#gaaf4ab97b3163920286cb932a3faedf86">DICTMINSZ</a>&#160;&#160;&#160;128</td></tr>
<tr class="memdesc:gaaf4ab97b3163920286cb932a3faedf86"><td class="mdescLeft">&#160;</td><td class="mdescRight">Minimal allocated number of entries in a dictionary. <br /></td></tr>
<tr class="separator:gaaf4ab97b3163920286cb932a3faedf86"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga220dbd9af990c8faebfd01bd62b2dde4"><td class="memItemLeft" align="right" valign="top"><a id="ga220dbd9af990c8faebfd01bd62b2dde4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga220dbd9af990c8faebfd01bd62b2dde4">DICT_INVALID_KEY</a>&#160;&#160;&#160;((char*)-1)</td></tr>
<tr class="memdesc:ga220dbd9af990c8faebfd01bd62b2dde4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invalid key token. <br /></td></tr>
<tr class="separator:ga220dbd9af990c8faebfd01bd62b2dde4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:gadc101255f1686a23210fb9ea88394d46"><td class="memItemLeft" align="right" valign="top"><a id="gadc101255f1686a23210fb9ea88394d46"></a>
typedef enum <a class="el" href="group__ciniparser.html#ga2fdd0675424601a39f3534cf0088822c">_line_status_</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#gadc101255f1686a23210fb9ea88394d46">line_status</a></td></tr>
<tr class="memdesc:gadc101255f1686a23210fb9ea88394d46"><td class="mdescLeft">&#160;</td><td class="mdescRight">This enum stores the status for each parsed line (internal use only). <br /></td></tr>
<tr class="separator:gadc101255f1686a23210fb9ea88394d46"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5bd3b2ce42b776c76755ec65642f43af"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct__dictionary__.html">_dictionary_</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a></td></tr>
<tr class="memdesc:ga5bd3b2ce42b776c76755ec65642f43af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dictionary object.  <a href="#ga5bd3b2ce42b776c76755ec65642f43af">More...</a><br /></td></tr>
<tr class="separator:ga5bd3b2ce42b776c76755ec65642f43af"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga2fdd0675424601a39f3534cf0088822c"><td class="memItemLeft" align="right" valign="top"><a id="ga2fdd0675424601a39f3534cf0088822c"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga2fdd0675424601a39f3534cf0088822c">_line_status_</a> { <br />
&#160;&#160;<b>LINE_UNPROCESSED</b>, 
<b>LINE_ERROR</b>, 
<b>LINE_EMPTY</b>, 
<b>LINE_COMMENT</b>, 
<br />
&#160;&#160;<b>LINE_SECTION</b>, 
<b>LINE_VALUE</b>
<br />
 }</td></tr>
<tr class="memdesc:ga2fdd0675424601a39f3534cf0088822c"><td class="mdescLeft">&#160;</td><td class="mdescRight">This enum stores the status for each parsed line (internal use only). <br /></td></tr>
<tr class="separator:ga2fdd0675424601a39f3534cf0088822c"><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:ga306ec559a5feef2a44712a16a72ba64b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga306ec559a5feef2a44712a16a72ba64b">ciniparser_getnsec</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *d)</td></tr>
<tr class="memdesc:ga306ec559a5feef2a44712a16a72ba64b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get number of sections in a dictionary.  <a href="#ga306ec559a5feef2a44712a16a72ba64b">More...</a><br /></td></tr>
<tr class="separator:ga306ec559a5feef2a44712a16a72ba64b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga57f6090b503edee285e7897b280ee6d0"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga57f6090b503edee285e7897b280ee6d0">ciniparser_getsecname</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *d, int n)</td></tr>
<tr class="memdesc:ga57f6090b503edee285e7897b280ee6d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get name for section n in a dictionary.  <a href="#ga57f6090b503edee285e7897b280ee6d0">More...</a><br /></td></tr>
<tr class="separator:ga57f6090b503edee285e7897b280ee6d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac3baf2303bc7715836462364ad3d1b71"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#gac3baf2303bc7715836462364ad3d1b71">ciniparser_dump</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *d, FILE *f)</td></tr>
<tr class="memdesc:gac3baf2303bc7715836462364ad3d1b71"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dump a dictionary to an opened file pointer.  <a href="#gac3baf2303bc7715836462364ad3d1b71">More...</a><br /></td></tr>
<tr class="separator:gac3baf2303bc7715836462364ad3d1b71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaedeba8efcca011ca841b7d27f892e930"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#gaedeba8efcca011ca841b7d27f892e930">ciniparser_dump_ini</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *d, FILE *f)</td></tr>
<tr class="memdesc:gaedeba8efcca011ca841b7d27f892e930"><td class="mdescLeft">&#160;</td><td class="mdescRight">Save a dictionary to a loadable ini file.  <a href="#gaedeba8efcca011ca841b7d27f892e930">More...</a><br /></td></tr>
<tr class="separator:gaedeba8efcca011ca841b7d27f892e930"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeb8a3530ebcbacf04b16a06c2353699a"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#gaeb8a3530ebcbacf04b16a06c2353699a">ciniparser_getstring</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *d, const char *key, char *def)</td></tr>
<tr class="memdesc:gaeb8a3530ebcbacf04b16a06c2353699a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the string associated to a key.  <a href="#gaeb8a3530ebcbacf04b16a06c2353699a">More...</a><br /></td></tr>
<tr class="separator:gaeb8a3530ebcbacf04b16a06c2353699a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga494c830a31e50ba9daa03c5b3b596d1d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga494c830a31e50ba9daa03c5b3b596d1d">ciniparser_getint</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *d, const char *key, int notfound)</td></tr>
<tr class="memdesc:ga494c830a31e50ba9daa03c5b3b596d1d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the string associated to a key, convert to an int.  <a href="#ga494c830a31e50ba9daa03c5b3b596d1d">More...</a><br /></td></tr>
<tr class="separator:ga494c830a31e50ba9daa03c5b3b596d1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab47e041735c05feab41bb03b2c2b09f7"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#gab47e041735c05feab41bb03b2c2b09f7">ciniparser_getdouble</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *d, const char *key, double notfound)</td></tr>
<tr class="memdesc:gab47e041735c05feab41bb03b2c2b09f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the string associated to a key, convert to a double.  <a href="#gab47e041735c05feab41bb03b2c2b09f7">More...</a><br /></td></tr>
<tr class="separator:gab47e041735c05feab41bb03b2c2b09f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga21a20d1db5df6cb8854829a9649d57eb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga21a20d1db5df6cb8854829a9649d57eb">ciniparser_getboolean</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *d, const char *key, int notfound)</td></tr>
<tr class="memdesc:ga21a20d1db5df6cb8854829a9649d57eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the string associated to a key, convert to a boolean.  <a href="#ga21a20d1db5df6cb8854829a9649d57eb">More...</a><br /></td></tr>
<tr class="separator:ga21a20d1db5df6cb8854829a9649d57eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafeceb3aa96858ad6d94367e834a84d19"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#gafeceb3aa96858ad6d94367e834a84d19">ciniparser_find_entry</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *ini, const char *entry)</td></tr>
<tr class="memdesc:gafeceb3aa96858ad6d94367e834a84d19"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds out if a given entry exists in a dictionary.  <a href="#gafeceb3aa96858ad6d94367e834a84d19">More...</a><br /></td></tr>
<tr class="separator:gafeceb3aa96858ad6d94367e834a84d19"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga169dabf5b0a86dc1f4bd01ba6d7e23ce"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga169dabf5b0a86dc1f4bd01ba6d7e23ce">ciniparser_set</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *d, const char *entry, const char *val)</td></tr>
<tr class="memdesc:ga169dabf5b0a86dc1f4bd01ba6d7e23ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set an item in the dictionary.  <a href="#ga169dabf5b0a86dc1f4bd01ba6d7e23ce">More...</a><br /></td></tr>
<tr class="separator:ga169dabf5b0a86dc1f4bd01ba6d7e23ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad0046980ed3cbf9da80b4f47655d27d9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#gad0046980ed3cbf9da80b4f47655d27d9">ciniparser_unset</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *ini, char *entry)</td></tr>
<tr class="memdesc:gad0046980ed3cbf9da80b4f47655d27d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete an entry in a dictionary.  <a href="#gad0046980ed3cbf9da80b4f47655d27d9">More...</a><br /></td></tr>
<tr class="separator:gad0046980ed3cbf9da80b4f47655d27d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1e877c8cb81d953914b7f10030d84ccd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga1e877c8cb81d953914b7f10030d84ccd">ciniparser_load</a> (const char *ininame)</td></tr>
<tr class="memdesc:ga1e877c8cb81d953914b7f10030d84ccd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parse an ini file and return an allocated dictionary object.  <a href="#ga1e877c8cb81d953914b7f10030d84ccd">More...</a><br /></td></tr>
<tr class="separator:ga1e877c8cb81d953914b7f10030d84ccd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaddec45454d13abb8fc4a8da8dd4cc338"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#gaddec45454d13abb8fc4a8da8dd4cc338">ciniparser_freedict</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *d)</td></tr>
<tr class="memdesc:gaddec45454d13abb8fc4a8da8dd4cc338"><td class="mdescLeft">&#160;</td><td class="mdescRight">Free all memory associated to an ini dictionary.  <a href="#gaddec45454d13abb8fc4a8da8dd4cc338">More...</a><br /></td></tr>
<tr class="separator:gaddec45454d13abb8fc4a8da8dd4cc338"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2890386ff0d944066f74cecff3cd0922"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga2890386ff0d944066f74cecff3cd0922">ciniparser_setstring</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *ini, char const *entry, const char *val)</td></tr>
<tr class="memdesc:ga2890386ff0d944066f74cecff3cd0922"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set an entry in a dictionary.  <a href="#ga2890386ff0d944066f74cecff3cd0922">More...</a><br /></td></tr>
<tr class="separator:ga2890386ff0d944066f74cecff3cd0922"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7c1ef0a729e668d1e8d6a7e774feaf2e"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga7c1ef0a729e668d1e8d6a7e774feaf2e">dictionary_hash</a> (const char *key)</td></tr>
<tr class="memdesc:ga7c1ef0a729e668d1e8d6a7e774feaf2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the hash key for a string.  <a href="#ga7c1ef0a729e668d1e8d6a7e774feaf2e">More...</a><br /></td></tr>
<tr class="separator:ga7c1ef0a729e668d1e8d6a7e774feaf2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga876a908eb786f957f939a08a362e514d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga876a908eb786f957f939a08a362e514d">dictionary_new</a> (int size)</td></tr>
<tr class="memdesc:ga876a908eb786f957f939a08a362e514d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new dictionary object.  <a href="#ga876a908eb786f957f939a08a362e514d">More...</a><br /></td></tr>
<tr class="separator:ga876a908eb786f957f939a08a362e514d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9d792f2544cf674a371663e2f32128fa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga9d792f2544cf674a371663e2f32128fa">dictionary_del</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *vd)</td></tr>
<tr class="memdesc:ga9d792f2544cf674a371663e2f32128fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete a dictionary object.  <a href="#ga9d792f2544cf674a371663e2f32128fa">More...</a><br /></td></tr>
<tr class="separator:ga9d792f2544cf674a371663e2f32128fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9b891a858ce598f8c87e3312d47bb2fc"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga9b891a858ce598f8c87e3312d47bb2fc">dictionary_get</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *d, const char *key, const char *def)</td></tr>
<tr class="memdesc:ga9b891a858ce598f8c87e3312d47bb2fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a value from a dictionary.  <a href="#ga9b891a858ce598f8c87e3312d47bb2fc">More...</a><br /></td></tr>
<tr class="separator:ga9b891a858ce598f8c87e3312d47bb2fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaab65a95ad09062716b24a129d8529b76"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#gaab65a95ad09062716b24a129d8529b76">dictionary_set</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *vd, const char *key, const char *val)</td></tr>
<tr class="memdesc:gaab65a95ad09062716b24a129d8529b76"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a value in a dictionary.  <a href="#gaab65a95ad09062716b24a129d8529b76">More...</a><br /></td></tr>
<tr class="separator:gaab65a95ad09062716b24a129d8529b76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga27f0752948d52ccd2568dae22f5db2bc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga27f0752948d52ccd2568dae22f5db2bc">dictionary_unset</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *d, const char *key)</td></tr>
<tr class="memdesc:ga27f0752948d52ccd2568dae22f5db2bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete a key in a dictionary.  <a href="#ga27f0752948d52ccd2568dae22f5db2bc">More...</a><br /></td></tr>
<tr class="separator:ga27f0752948d52ccd2568dae22f5db2bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6e29ecf9c79331b1c6c26cd662cba042"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__ciniparser.html#ga6e29ecf9c79331b1c6c26cd662cba042">dictionary_dump</a> (<a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *d, FILE *out)</td></tr>
<tr class="memdesc:ga6e29ecf9c79331b1c6c26cd662cba042"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dump a dictionary to an opened file pointer.  <a href="#ga6e29ecf9c79331b1c6c26cd662cba042">More...</a><br /></td></tr>
<tr class="separator:ga6e29ecf9c79331b1c6c26cd662cba042"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="ga071228a4e1c69ac2eec59e9c1385185a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga071228a4e1c69ac2eec59e9c1385185a">&#9670;&nbsp;</a></span>MAXVALSZ</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MAXVALSZ&#160;&#160;&#160;1024</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Maximum value size for integers and doubles. </p>

<p class="definition">Definition at line <a class="el" href="dictionary_8c_source.html#l00047">47</a> of file <a class="el" href="dictionary_8c_source.html">dictionary.c</a>.</p>

</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="ga5bd3b2ce42b776c76755ec65642f43af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5bd3b2ce42b776c76755ec65642f43af">&#9670;&nbsp;</a></span>dictionary</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="struct__dictionary__.html">_dictionary_</a>  <a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Dictionary object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">n</td><td>Number of entries in the dictionary </td></tr>
    <tr><td class="paramname">size</td><td>Storage size </td></tr>
    <tr><td class="paramname">val</td><td>List of string values </td></tr>
    <tr><td class="paramname">key</td><td>List of string keys </td></tr>
    <tr><td class="paramname">hash</td><td>List of hash values for keys</td></tr>
  </table>
  </dd>
</dl>
<p>This object contains a list of string/string associations. Each association is identified by a unique string key. Looking up values in the dictionary is speeded up by the use of a (hopefully collision-free) hash function. </p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ciniparser_dump </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>d</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">FILE *&#160;</td>
          <td class="paramname"><em>f</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Dump a dictionary to an opened file pointer. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>Dictionary to dump. </td></tr>
    <tr><td class="paramname">f</td><td>Opened file pointer to dump to. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void</dd></dl>
<p>This function prints out the contents of a dictionary, one element by line, onto the provided file pointer. It is OK to specify <code>stderr</code> or <code>stdout</code> as output files. This function is meant for debugging purposes mostly. </p>

<p class="definition">Definition at line <a class="el" href="ciniparser_8c_source.html#l00227">227</a> of file <a class="el" href="ciniparser_8c_source.html">ciniparser.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ciniparser_dump_ini </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>d</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">FILE *&#160;</td>
          <td class="paramname"><em>f</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Save a dictionary to a loadable ini file. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>Dictionary to dump </td></tr>
    <tr><td class="paramname">f</td><td>Opened file pointer to dump to </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void</dd></dl>
<p>This function dumps a given dictionary into a loadable ini file. It is Ok to specify <code>stderr</code> or <code>stdout</code> as output files. </p>

<p class="definition">Definition at line <a class="el" href="ciniparser_8c_source.html#l00244">244</a> of file <a class="el" href="ciniparser_8c_source.html">ciniparser.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ciniparser_find_entry </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>ini</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>entry</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Finds out if a given entry exists in a dictionary. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ini</td><td>Dictionary to search </td></tr>
    <tr><td class="paramname">entry</td><td>Name of the entry to look for </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>integer 1 if entry exists, 0 otherwise</dd></dl>
<p>Finds out if a given entry exists in the dictionary. Since sections are stored as keys with NULL associated values, this is the only way of querying for the presence of sections in a dictionary. </p>

<p class="definition">Definition at line <a class="el" href="ciniparser_8c_source.html#l00348">348</a> of file <a class="el" href="ciniparser_8c_source.html">ciniparser.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ciniparser_freedict </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>d</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Free all memory associated to an ini dictionary. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>Dictionary to free </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void</dd></dl>
<p>Free all memory associated to an ini dictionary. It is mandatory to call this function before the dictionary object gets out of the current context. </p>

<p class="definition">Definition at line <a class="el" href="ciniparser_8c_source.html#l00468">468</a> of file <a class="el" href="ciniparser_8c_source.html">ciniparser.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ciniparser_getboolean </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>d</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">int&#160;</td>
          <td class="paramname"><em>notfound</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the string associated to a key, convert to a boolean. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>Dictionary to search </td></tr>
    <tr><td class="paramname">key</td><td>Key string to look for </td></tr>
    <tr><td class="paramname">notfound</td><td>Value to return in case of error </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>integer</dd></dl>
<p>This function queries a dictionary for a key. A key as read from an ini file is given as "section:key". If the key cannot be found, the notfound value is returned.</p>
<p>A true boolean is found if one of the following is matched:</p>
<ul>
<li>A string starting with 'y'</li>
<li>A string starting with 'Y'</li>
<li>A string starting with 't'</li>
<li>A string starting with 'T'</li>
<li>A string starting with '1'</li>
</ul>
<p>A false boolean is found if one of the following is matched:</p>
<ul>
<li>A string starting with 'n'</li>
<li>A string starting with 'N'</li>
<li>A string starting with 'f'</li>
<li>A string starting with 'F'</li>
<li>A string starting with '0'</li>
</ul>
<p>The notfound value returned if no boolean is identified, does not necessarily have to be 0 or 1. </p>

<p class="definition">Definition at line <a class="el" href="ciniparser_8c_source.html#l00324">324</a> of file <a class="el" href="ciniparser_8c_source.html">ciniparser.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double ciniparser_getdouble </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>d</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">double&#160;</td>
          <td class="paramname"><em>notfound</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the string associated to a key, convert to a double. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>Dictionary to search </td></tr>
    <tr><td class="paramname">key</td><td>Key string to look for </td></tr>
    <tr><td class="paramname">notfound</td><td>Value to return in case of error </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>double</dd></dl>
<p>This function queries a dictionary for a key. A key as read from an ini file is given as "section:key". If the key cannot be found, the notfound value is returned. </p>

<p class="definition">Definition at line <a class="el" href="ciniparser_8c_source.html#l00312">312</a> of file <a class="el" href="ciniparser_8c_source.html">ciniparser.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ciniparser_getint </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>d</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">int&#160;</td>
          <td class="paramname"><em>notfound</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the string associated to a key, convert to an int. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>Dictionary to search </td></tr>
    <tr><td class="paramname">key</td><td>Key string to look for </td></tr>
    <tr><td class="paramname">notfound</td><td>Value to return in case of error </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>integer</dd></dl>
<p>This function queries a dictionary for a key. A key as read from an ini file is given as "section:key". If the key cannot be found, the notfound value is returned.</p>
<p>Supported values for integers include the usual C notation so decimal, octal (starting with 0) and hexadecimal (starting with 0x) are supported. Examples:</p>
<ul>
<li>"42" -&gt; 42</li>
<li>"042" -&gt; 34 (octal -&gt; decimal)</li>
<li>"0x42" -&gt; 66 (hexa -&gt; decimal)</li>
</ul>
<p>Warning: the conversion may overflow in various ways. Conversion is totally outsourced to strtol(), see the associated man page for overflow handling.</p>
<p>Credits: Thanks to A. Becker for suggesting strtol() </p>

<p class="definition">Definition at line <a class="el" href="ciniparser_8c_source.html#l00300">300</a> of file <a class="el" href="ciniparser_8c_source.html">ciniparser.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ciniparser_getnsec </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>d</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get number of sections in a dictionary. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>Dictionary to examine </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>int Number of sections found in dictionary, -1 on error</dd></dl>
<p>This function returns the number of sections found in a dictionary. The test to recognize sections is done on the string stored in the dictionary: a section name is given as "section" whereas a key is stored as "section:key", thus the test looks for entries that do not contain a colon.</p>
<p>This clearly fails in the case a section name contains a colon, but this should simply be avoided. </p>

<p class="definition">Definition at line <a class="el" href="ciniparser_8c_source.html#l00179">179</a> of file <a class="el" href="ciniparser_8c_source.html">ciniparser.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char * ciniparser_getsecname </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>d</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>n</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get name for section n in a dictionary. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>Dictionary to examine </td></tr>
    <tr><td class="paramname">n</td><td>Section number (from 0 to nsec-1). </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to char string, NULL on error</dd></dl>
<p>This function locates the n-th section in a dictionary and returns its name as a pointer to a string statically allocated inside the dictionary. Do not free or modify the returned string! </p>

<p class="definition">Definition at line <a class="el" href="ciniparser_8c_source.html#l00198">198</a> of file <a class="el" href="ciniparser_8c_source.html">ciniparser.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char * ciniparser_getstring </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>d</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">char *&#160;</td>
          <td class="paramname"><em>def</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the string associated to a key. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>Dictionary to search </td></tr>
    <tr><td class="paramname">key</td><td>Key string to look for </td></tr>
    <tr><td class="paramname">def</td><td>Default value to return if key not found. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>pointer to statically allocated character string</dd></dl>
<p>This function queries a dictionary for a key. A key as read from an ini file is given as "section:key". If the key cannot be found, the pointer passed as 'def' is returned. The returned char pointer is pointing to a string allocated in the dictionary, do not free or modify it. </p>

<p class="definition">Definition at line <a class="el" href="ciniparser_8c_source.html#l00286">286</a> of file <a class="el" href="ciniparser_8c_source.html">ciniparser.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> * ciniparser_load </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>ininame</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Parse an ini file and return an allocated dictionary object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ininame</td><td>Name of the ini file to read. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to newly allocated dictionary</dd></dl>
<p>This is the parser for ini files. This function is called, providing the name of the file to be read. It returns a dictionary object that should not be accessed directly, but through accessor functions instead.</p>
<p>The returned dictionary must be freed using <a class="el" href="group__ciniparser.html#gaddec45454d13abb8fc4a8da8dd4cc338" title="Free all memory associated to an ini dictionary.">ciniparser_freedict()</a>. </p>

<p class="definition">Definition at line <a class="el" href="ciniparser_8c_source.html#l00368">368</a> of file <a class="el" href="ciniparser_8c_source.html">ciniparser.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ciniparser_set </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>d</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>entry</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set an item in the dictionary. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>Dictionary object created by <a class="el" href="group__ciniparser.html#ga1e877c8cb81d953914b7f10030d84ccd" title="Parse an ini file and return an allocated dictionary object.">ciniparser_load()</a> </td></tr>
    <tr><td class="paramname">entry</td><td>Entry in the dictionary to manipulate </td></tr>
    <tr><td class="paramname">val</td><td>Value to assign to the entry </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 on success, -1 on error</dd></dl>
<p>Remember that string values are converted by <a class="el" href="group__ciniparser.html#ga21a20d1db5df6cb8854829a9649d57eb" title="Get the string associated to a key, convert to a boolean.">ciniparser_getboolean()</a>, <a class="el" href="group__ciniparser.html#gab47e041735c05feab41bb03b2c2b09f7" title="Get the string associated to a key, convert to a double.">ciniparser_getdouble()</a>, etc. It is also OK to set an entry to NULL. </p>

<p class="definition">Definition at line <a class="el" href="ciniparser_8c_source.html#l00358">358</a> of file <a class="el" href="ciniparser_8c_source.html">ciniparser.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ciniparser_setstring </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>ini</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>entry</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set an entry in a dictionary. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ini</td><td>Dictionary to modify. </td></tr>
    <tr><td class="paramname">entry</td><td>Entry to modify (entry name) </td></tr>
    <tr><td class="paramname">val</td><td>New value to associate to the entry. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>int 0 if Ok, -1 otherwise.</dd></dl>
<p>If the given entry can be found in the dictionary, it is modified to contain the provided value. If it cannot be found, -1 is returned. It is Ok to set val to NULL. </p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ciniparser_unset </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>ini</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>entry</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Delete an entry in a dictionary. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ini</td><td>Dictionary to modify </td></tr>
    <tr><td class="paramname">entry</td><td>Entry to delete (entry name) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void</dd></dl>
<p>If the given entry can be found, it is deleted from the dictionary. </p>

<p class="definition">Definition at line <a class="el" href="ciniparser_8c_source.html#l00363">363</a> of file <a class="el" href="ciniparser_8c_source.html">ciniparser.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dictionary_del </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>vd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Delete a dictionary object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>dictionary object to deallocate. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void</dd></dl>
<p>Deallocate a dictionary object and all memory associated to it. </p>

<p class="definition">Definition at line <a class="el" href="dictionary_8c_source.html#l00109">109</a> of file <a class="el" href="dictionary_8c_source.html">dictionary.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dictionary_dump </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>d</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">FILE *&#160;</td>
          <td class="paramname"><em>out</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Dump a dictionary to an opened file pointer. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>Dictionary to dump </td></tr>
    <tr><td class="paramname">out</td><td>Opened file pointer </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void</dd></dl>
<p>Dumps a dictionary onto an opened file pointer. Key pairs are printed out as <code></code>[Key]=[Value], one per line. It is Ok to provide stdout or stderr as output file pointers. </p>

<p class="definition">Definition at line <a class="el" href="dictionary_8c_source.html#l00241">241</a> of file <a class="el" href="dictionary_8c_source.html">dictionary.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char * dictionary_get </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>d</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">const char *&#160;</td>
          <td class="paramname"><em>def</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get a value from a dictionary. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>dictionary object to search. </td></tr>
    <tr><td class="paramname">key</td><td>Key to look for in the dictionary. </td></tr>
    <tr><td class="paramname">def</td><td>Default value to return if key not found. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 pointer to internally allocated character string.</dd></dl>
<p>This function locates a key in a dictionary and returns a pointer to its value, or the passed 'def' pointer if no such key can be found in dictionary. The returned character pointer points to data internal to the dictionary object, you should not try to free it or modify it. </p>

<p class="definition">Definition at line <a class="el" href="dictionary_8c_source.html#l00128">128</a> of file <a class="el" href="dictionary_8c_source.html">dictionary.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned dictionary_hash </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Compute the hash key for a string. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">key</td><td>Character string to use for key. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 unsigned int on at least 32 bits.</dd></dl>
<p>This hash function has been taken from an Article in Dr Dobbs Journal. This is normally a collision-free function, distributing keys evenly. The key is stored anyway in the struct so that collision can be avoided by comparing the key itself in last resort. </p>

<p class="definition">Definition at line <a class="el" href="dictionary_8c_source.html#l00074">74</a> of file <a class="el" href="dictionary_8c_source.html">dictionary.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> * dictionary_new </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>size</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Create a new dictionary object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">size</td><td>Optional initial size of the dictionary. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>allocated dictionary object on success, NULL on failure</dd></dl>
<p>This function allocates a new dictionary object of given size and returns it. If you do not know in advance (roughly) the number of entries in the dictionary, give size=0. </p>

<p class="definition">Definition at line <a class="el" href="dictionary_8c_source.html#l00092">92</a> of file <a class="el" href="dictionary_8c_source.html">dictionary.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int dictionary_set </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>vd</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">const char *&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set a value in a dictionary. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>dictionary object to modify. </td></tr>
    <tr><td class="paramname">key</td><td>Key to modify or add. </td></tr>
    <tr><td class="paramname">val</td><td>Value to add. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>int 0 if Ok, anything else otherwise</dd></dl>
<p>If the given key is found in the dictionary, the associated value is replaced by the provided one. If the key cannot be found in the dictionary, it is added to it.</p>
<p>It is Ok to provide a NULL value for val, but NULL values for the dictionary or the key are considered as errors: the function will return immediately in such a case.</p>
<p>Notice that if you dictionary_set a variable to NULL, a call to dictionary_get will return a NULL value: the variable will be found, and its value (NULL) is returned. In other words, setting the variable content to NULL is equivalent to deleting the variable from the dictionary. It is not possible (in this implementation) to have a key in the dictionary without value.</p>
<p>This function returns non-zero in case of failure. </p>

<p class="definition">Definition at line <a class="el" href="dictionary_8c_source.html#l00147">147</a> of file <a class="el" href="dictionary_8c_source.html">dictionary.c</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dictionary_unset </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ciniparser.html#ga5bd3b2ce42b776c76755ec65642f43af">dictionary</a> *&#160;</td>
          <td class="paramname"><em>d</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>key</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Delete a key in a dictionary. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>dictionary object to modify. </td></tr>
    <tr><td class="paramname">key</td><td>Key to remove. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void</dd></dl>
<p>This function deletes a key in a dictionary. Nothing is done if the key cannot be found. </p>

<p class="definition">Definition at line <a class="el" href="dictionary_8c_source.html#l00206">206</a> of file <a class="el" href="dictionary_8c_source.html">dictionary.c</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
  </ul>
</div>
</body>
</html>