mirror of
https://github.com/LBRYFoundation/pool.git
synced 2025-08-23 17:37:25 +00:00
583 lines
28 KiB
HTML
583 lines
28 KiB
HTML
<!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"/>
|
|
<title>iniparser: iniparser.h File Reference</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
|
|
</head>
|
|
<body>
|
|
<!-- Generated by Doxygen 1.6.3 -->
|
|
<div class="contents">
|
|
<h1>iniparser.h File Reference</h1>
|
|
<p>Parser for ini files.
|
|
<a href="#_details">More...</a></p>
|
|
<table border="0" cellpadding="0" cellspacing="0">
|
|
<tr><td colspan="2"><h2>Functions</h2></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="iniparser_8h.html#a0b5d6cdc7587e2d27a30f5cdc4a91931">iniparser_getnsec</a> (dictionary *d)</td></tr>
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Get number of sections in a dictionary. <a href="#a0b5d6cdc7587e2d27a30f5cdc4a91931"></a><br/></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="iniparser_8h.html#a393212be805f395bbfdeb1bafa8bb72a">iniparser_getsecname</a> (dictionary *d, int n)</td></tr>
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Get name for section n in a dictionary. <a href="#a393212be805f395bbfdeb1bafa8bb72a"></a><br/></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="iniparser_8h.html#aece0e32de371c9e9592d8333f816dfac">iniparser_dump_ini</a> (dictionary *d, FILE *f)</td></tr>
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Save a dictionary to a loadable ini file. <a href="#aece0e32de371c9e9592d8333f816dfac"></a><br/></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="iniparser_8h.html#a046436b3489cd8854ba8e29109250324">iniparser_dump</a> (dictionary *d, FILE *f)</td></tr>
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Dump a dictionary to an opened file pointer. <a href="#a046436b3489cd8854ba8e29109250324"></a><br/></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="iniparser_8h.html#aec2e5539bc2be063d1323cdf65f162a3">iniparser_getstring</a> (dictionary *d, char *key, char *def)</td></tr>
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Get the string associated to a key. <a href="#aec2e5539bc2be063d1323cdf65f162a3"></a><br/></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="iniparser_8h.html#ab813340fa9c9a7fcfe6775d6e5e458c2">iniparser_getint</a> (dictionary *d, char *key, int notfound)</td></tr>
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Get the string associated to a key, convert to an int. <a href="#ab813340fa9c9a7fcfe6775d6e5e458c2"></a><br/></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="iniparser_8h.html#a480d35322f1252344cf2246ac21ee559">iniparser_getdouble</a> (dictionary *d, char *key, double notfound)</td></tr>
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Get the string associated to a key, convert to a double. <a href="#a480d35322f1252344cf2246ac21ee559"></a><br/></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="iniparser_8h.html#aa2ea2b34f6f4b3cf93c9d4f8f992811f">iniparser_getboolean</a> (dictionary *d, char *key, int notfound)</td></tr>
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Get the string associated to a key, convert to a boolean. <a href="#aa2ea2b34f6f4b3cf93c9d4f8f992811f"></a><br/></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="iniparser_8h.html#aa5d5787f96d6982a937edb2fd499ba60">iniparser_set</a> (dictionary *ini, char *entry, char *val)</td></tr>
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Set an entry in a dictionary. <a href="#aa5d5787f96d6982a937edb2fd499ba60"></a><br/></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="iniparser_8h.html#a7b1a7f2492a35043867fa801b8f21e52">iniparser_unset</a> (dictionary *ini, char *entry)</td></tr>
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Delete an entry in a dictionary. <a href="#a7b1a7f2492a35043867fa801b8f21e52"></a><br/></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="iniparser_8h.html#a3d67c98bbc0cb5239f024ad54bdc63f1">iniparser_find_entry</a> (dictionary *ini, char *entry)</td></tr>
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Finds out if a given entry exists in a dictionary. <a href="#a3d67c98bbc0cb5239f024ad54bdc63f1"></a><br/></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">dictionary * </td><td class="memItemRight" valign="bottom"><a class="el" href="iniparser_8h.html#a45d87791d4d2593781bfdfe2991c3a2d">iniparser_load</a> (char *ininame)</td></tr>
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Parse an ini file and return an allocated dictionary object. <a href="#a45d87791d4d2593781bfdfe2991c3a2d"></a><br/></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="iniparser_8h.html#a90549ee518523921886b74454ff872eb">iniparser_freedict</a> (dictionary *d)</td></tr>
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Free all memory associated to an ini dictionary. <a href="#a90549ee518523921886b74454ff872eb"></a><br/></td></tr>
|
|
</table>
|
|
<hr/><a name="_details"></a><h2>Detailed Description</h2>
|
|
<p>Parser for ini files. </p>
|
|
<dl class="author"><dt><b>Author:</b></dt><dd>N. Devillard </dd></dl>
|
|
<dl class="date"><dt><b>Date:</b></dt><dd>Sep 2007 </dd></dl>
|
|
<dl class="version"><dt><b>Version:</b></dt><dd>3.0 </dd></dl>
|
|
<hr/><h2>Function Documentation</h2>
|
|
<a class="anchor" id="a046436b3489cd8854ba8e29109250324"></a><!-- doxytag: member="iniparser.h::iniparser_dump" ref="a046436b3489cd8854ba8e29109250324" args="(dictionary *d, FILE *f)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void iniparser_dump </td>
|
|
<td>(</td>
|
|
<td class="paramtype">dictionary * </td>
|
|
<td class="paramname"> <em>d</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">FILE * </td>
|
|
<td class="paramname"> <em>f</em></td><td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<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><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td>Dictionary to dump. </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>f</em> </td><td>Opened file pointer to dump to. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="return"><dt><b>Returns:</b></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>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="aece0e32de371c9e9592d8333f816dfac"></a><!-- doxytag: member="iniparser.h::iniparser_dump_ini" ref="aece0e32de371c9e9592d8333f816dfac" args="(dictionary *d, FILE *f)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void iniparser_dump_ini </td>
|
|
<td>(</td>
|
|
<td class="paramtype">dictionary * </td>
|
|
<td class="paramname"> <em>d</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">FILE * </td>
|
|
<td class="paramname"> <em>f</em></td><td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<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><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td>Dictionary to dump </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>f</em> </td><td>Opened file pointer to dump to </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="return"><dt><b>Returns:</b></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>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a3d67c98bbc0cb5239f024ad54bdc63f1"></a><!-- doxytag: member="iniparser.h::iniparser_find_entry" ref="a3d67c98bbc0cb5239f024ad54bdc63f1" args="(dictionary *ini, char *entry)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int iniparser_find_entry </td>
|
|
<td>(</td>
|
|
<td class="paramtype">dictionary * </td>
|
|
<td class="paramname"> <em>ini</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char * </td>
|
|
<td class="paramname"> <em>entry</em></td><td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<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><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>ini</em> </td><td>Dictionary to search </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>entry</em> </td><td>Name of the entry to look for </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="return"><dt><b>Returns:</b></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>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a90549ee518523921886b74454ff872eb"></a><!-- doxytag: member="iniparser.h::iniparser_freedict" ref="a90549ee518523921886b74454ff872eb" args="(dictionary *d)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void iniparser_freedict </td>
|
|
<td>(</td>
|
|
<td class="paramtype">dictionary * </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><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td>Dictionary to free </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="return"><dt><b>Returns:</b></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>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="aa2ea2b34f6f4b3cf93c9d4f8f992811f"></a><!-- doxytag: member="iniparser.h::iniparser_getboolean" ref="aa2ea2b34f6f4b3cf93c9d4f8f992811f" args="(dictionary *d, char *key, int notfound)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int iniparser_getboolean </td>
|
|
<td>(</td>
|
|
<td class="paramtype">dictionary * </td>
|
|
<td class="paramname"> <em>d</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char * </td>
|
|
<td class="paramname"> <em>key</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"> <em>notfound</em></td><td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<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><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td>Dictionary to search </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>key</em> </td><td>Key string to look for </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>notfound</em> </td><td>Value to return in case of error </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="return"><dt><b>Returns:</b></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>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a480d35322f1252344cf2246ac21ee559"></a><!-- doxytag: member="iniparser.h::iniparser_getdouble" ref="a480d35322f1252344cf2246ac21ee559" args="(dictionary *d, char *key, double notfound)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">double iniparser_getdouble </td>
|
|
<td>(</td>
|
|
<td class="paramtype">dictionary * </td>
|
|
<td class="paramname"> <em>d</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char * </td>
|
|
<td class="paramname"> <em>key</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">double </td>
|
|
<td class="paramname"> <em>notfound</em></td><td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<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><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td>Dictionary to search </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>key</em> </td><td>Key string to look for </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>notfound</em> </td><td>Value to return in case of error </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="return"><dt><b>Returns:</b></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>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="ab813340fa9c9a7fcfe6775d6e5e458c2"></a><!-- doxytag: member="iniparser.h::iniparser_getint" ref="ab813340fa9c9a7fcfe6775d6e5e458c2" args="(dictionary *d, char *key, int notfound)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int iniparser_getint </td>
|
|
<td>(</td>
|
|
<td class="paramtype">dictionary * </td>
|
|
<td class="paramname"> <em>d</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char * </td>
|
|
<td class="paramname"> <em>key</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"> <em>notfound</em></td><td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<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><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td>Dictionary to search </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>key</em> </td><td>Key string to look for </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>notfound</em> </td><td>Value to return in case of error </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="return"><dt><b>Returns:</b></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" -> 42</li>
|
|
<li>"042" -> 34 (octal -> decimal)</li>
|
|
<li>"0x42" -> 66 (hexa -> 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>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a0b5d6cdc7587e2d27a30f5cdc4a91931"></a><!-- doxytag: member="iniparser.h::iniparser_getnsec" ref="a0b5d6cdc7587e2d27a30f5cdc4a91931" args="(dictionary *d)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int iniparser_getnsec </td>
|
|
<td>(</td>
|
|
<td class="paramtype">dictionary * </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><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td>Dictionary to examine </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="return"><dt><b>Returns:</b></dt><dd>int Number of sections found in dictionary</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>This function returns -1 in case of error. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a393212be805f395bbfdeb1bafa8bb72a"></a><!-- doxytag: member="iniparser.h::iniparser_getsecname" ref="a393212be805f395bbfdeb1bafa8bb72a" args="(dictionary *d, int n)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">char* iniparser_getsecname </td>
|
|
<td>(</td>
|
|
<td class="paramtype">dictionary * </td>
|
|
<td class="paramname"> <em>d</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"> <em>n</em></td><td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<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><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td>Dictionary to examine </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>n</em> </td><td>Section number (from 0 to nsec-1). </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="return"><dt><b>Returns:</b></dt><dd>Pointer to char string</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>This function returns NULL in case of error. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="aec2e5539bc2be063d1323cdf65f162a3"></a><!-- doxytag: member="iniparser.h::iniparser_getstring" ref="aec2e5539bc2be063d1323cdf65f162a3" args="(dictionary *d, char *key, char *def)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">char* iniparser_getstring </td>
|
|
<td>(</td>
|
|
<td class="paramtype">dictionary * </td>
|
|
<td class="paramname"> <em>d</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char * </td>
|
|
<td class="paramname"> <em>key</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char * </td>
|
|
<td class="paramname"> <em>def</em></td><td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Get the string associated to a key. </p>
|
|
<dl><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>d</em> </td><td>Dictionary to search </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>key</em> </td><td>Key string to look for </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>def</em> </td><td>Default value to return if key not found. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="return"><dt><b>Returns:</b></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>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a45d87791d4d2593781bfdfe2991c3a2d"></a><!-- doxytag: member="iniparser.h::iniparser_load" ref="a45d87791d4d2593781bfdfe2991c3a2d" args="(char *ininame)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">dictionary* iniparser_load </td>
|
|
<td>(</td>
|
|
<td class="paramtype">char * </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><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>ininame</em> </td><td>Name of the ini file to read. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="return"><dt><b>Returns:</b></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="iniparser_8h.html#a90549ee518523921886b74454ff872eb" title="Free all memory associated to an ini dictionary.">iniparser_freedict()</a>. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="aa5d5787f96d6982a937edb2fd499ba60"></a><!-- doxytag: member="iniparser.h::iniparser_set" ref="aa5d5787f96d6982a937edb2fd499ba60" args="(dictionary *ini, char *entry, char *val)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int iniparser_set </td>
|
|
<td>(</td>
|
|
<td class="paramtype">dictionary * </td>
|
|
<td class="paramname"> <em>ini</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char * </td>
|
|
<td class="paramname"> <em>entry</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char * </td>
|
|
<td class="paramname"> <em>val</em></td><td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Set an entry in a dictionary. </p>
|
|
<dl><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>ini</em> </td><td>Dictionary to modify. </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>entry</em> </td><td>Entry to modify (entry name) </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>val</em> </td><td>New value to associate to the entry. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="return"><dt><b>Returns:</b></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 class="anchor" id="a7b1a7f2492a35043867fa801b8f21e52"></a><!-- doxytag: member="iniparser.h::iniparser_unset" ref="a7b1a7f2492a35043867fa801b8f21e52" args="(dictionary *ini, char *entry)" -->
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void iniparser_unset </td>
|
|
<td>(</td>
|
|
<td class="paramtype">dictionary * </td>
|
|
<td class="paramname"> <em>ini</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char * </td>
|
|
<td class="paramname"> <em>entry</em></td><td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="memdoc">
|
|
|
|
<p>Delete an entry in a dictionary. </p>
|
|
<dl><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>ini</em> </td><td>Dictionary to modify </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>entry</em> </td><td>Entry to delete (entry name) </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="return"><dt><b>Returns:</b></dt><dd>void</dd></dl>
|
|
<p>If the given entry can be found, it is deleted from the dictionary. </p>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr class="footer"/><address style="text-align: right;"><small>Generated on Wed Mar 2 22:04:59 2011 for iniparser by
|
|
<a href="http://www.doxygen.org/index.html">
|
|
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
|
|
</body>
|
|
</html>
|