2006-04-11 18:34:40 +04:00
< html >
< head >
< meta name = "author" content = "ndevilla@free.fr" >
< meta name = "keywords" content = "ini file, config file, parser, C library" >
< link href = "doxygen.css" rel = "stylesheet" type = "text/css" >
< title > iniparser 2.x< / title >
< / head >
< body text = "#000000" bgcolor = "#ffffff" >
2007-05-27 19:58:19 +04:00
<!-- Generated by Doxygen 1.5.1 -->
2006-04-11 18:34:40 +04:00
< h1 > iniparser.h File Reference< / h1 > Parser for ini files. < a href = "#_details" > More...< / a >
< p >
< table border = "0" cellpadding = "0" cellspacing = "0" >
< tr > < td > < / td > < / tr >
< tr > < td colspan = "2" > < br > < h2 > Functions< / h2 > < / td > < / tr >
2007-05-27 19:58:19 +04:00
< tr > < td class = "memItemLeft" nowrap align = "right" valign = "top" > int < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "iniparser_8h.html#0b5d6cdc7587e2d27a30f5cdc4a91931" > iniparser_getnsec< / a > (dictionary *d)< / td > < / tr >
2006-04-11 18:34:40 +04:00
2007-05-27 19:58:19 +04:00
< tr > < td class = "mdescLeft" > < / td > < td class = "mdescRight" > Get number of sections in a dictionary. < a href = "#0b5d6cdc7587e2d27a30f5cdc4a91931" > < / a > < br > < / td > < / tr >
< tr > < td class = "memItemLeft" nowrap align = "right" valign = "top" > char * < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "iniparser_8h.html#393212be805f395bbfdeb1bafa8bb72a" > iniparser_getsecname< / a > (dictionary *d, int n)< / td > < / tr >
2006-04-11 18:34:40 +04:00
2007-05-27 19:58:19 +04:00
< tr > < td class = "mdescLeft" > < / td > < td class = "mdescRight" > Get name for section n in a dictionary. < a href = "#393212be805f395bbfdeb1bafa8bb72a" > < / a > < br > < / td > < / tr >
< tr > < td class = "memItemLeft" nowrap align = "right" valign = "top" > void < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "iniparser_8h.html#ece0e32de371c9e9592d8333f816dfac" > iniparser_dump_ini< / a > (dictionary *d, FILE *f)< / td > < / tr >
2006-04-11 18:34:40 +04:00
2007-05-27 19:58:19 +04:00
< tr > < td class = "mdescLeft" > < / td > < td class = "mdescRight" > Save a dictionary to a loadable ini file. < a href = "#ece0e32de371c9e9592d8333f816dfac" > < / a > < br > < / td > < / tr >
< tr > < td class = "memItemLeft" nowrap align = "right" valign = "top" > void < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "iniparser_8h.html#046436b3489cd8854ba8e29109250324" > iniparser_dump< / a > (dictionary *d, FILE *f)< / td > < / tr >
2006-04-11 18:34:40 +04:00
2007-05-27 19:58:19 +04:00
< tr > < td class = "mdescLeft" > < / td > < td class = "mdescRight" > Dump a dictionary to an opened file pointer. < a href = "#046436b3489cd8854ba8e29109250324" > < / a > < br > < / td > < / tr >
< tr > < td class = "memItemLeft" nowrap align = "right" valign = "top" > char * < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "iniparser_8h.html#587eafb48937fdee8ae414ad7a666db8" > iniparser_getstr< / a > (dictionary *d, const char *key)< / td > < / tr >
2006-04-11 18:34:40 +04:00
2007-05-27 19:58:19 +04:00
< tr > < td class = "mdescLeft" > < / td > < td class = "mdescRight" > Get the string associated to a key, return NULL if not found. < a href = "#587eafb48937fdee8ae414ad7a666db8" > < / a > < br > < / td > < / tr >
< tr > < td class = "memItemLeft" nowrap align = "right" valign = "top" > char * < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "iniparser_8h.html#7894f8480e1f254d4a1b4a31bdc51b46" > iniparser_getstring< / a > (dictionary *d, const char *key, char *def)< / td > < / tr >
2006-04-11 18:34:40 +04:00
2007-05-27 19:58:19 +04:00
< tr > < td class = "mdescLeft" > < / td > < td class = "mdescRight" > Get the string associated to a key. < a href = "#7894f8480e1f254d4a1b4a31bdc51b46" > < / a > < br > < / td > < / tr >
< tr > < td class = "memItemLeft" nowrap align = "right" valign = "top" > int < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "iniparser_8h.html#694eb1110f4200db8648820a0bb405fa" > iniparser_getint< / a > (dictionary *d, const char *key, int notfound)< / td > < / tr >
2006-04-11 18:34:40 +04:00
2007-05-27 19:58:19 +04:00
< tr > < td class = "mdescLeft" > < / td > < td class = "mdescRight" > Get the string associated to a key, convert to an int. < a href = "#694eb1110f4200db8648820a0bb405fa" > < / a > < br > < / td > < / tr >
< tr > < td class = "memItemLeft" nowrap align = "right" valign = "top" > double < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "iniparser_8h.html#480d35322f1252344cf2246ac21ee559" > iniparser_getdouble< / a > (dictionary *d, char *key, double notfound)< / td > < / tr >
2006-04-11 18:34:40 +04:00
2007-05-27 19:58:19 +04:00
< tr > < td class = "mdescLeft" > < / td > < td class = "mdescRight" > Get the string associated to a key, convert to a double. < a href = "#480d35322f1252344cf2246ac21ee559" > < / a > < br > < / td > < / tr >
< tr > < td class = "memItemLeft" nowrap align = "right" valign = "top" > int < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "iniparser_8h.html#eb93c13fcbb75efaa396f53bfd73ff4d" > iniparser_getboolean< / a > (dictionary *d, const char *key, int notfound)< / td > < / tr >
2006-04-11 18:34:40 +04:00
2007-05-27 19:58:19 +04:00
< tr > < td class = "mdescLeft" > < / td > < td class = "mdescRight" > Get the string associated to a key, convert to a boolean. < a href = "#eb93c13fcbb75efaa396f53bfd73ff4d" > < / a > < br > < / td > < / tr >
< tr > < td class = "memItemLeft" nowrap align = "right" valign = "top" > int < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "iniparser_8h.html#605a88057bac4c3249513fc588421c32" > iniparser_setstr< / a > (dictionary *ini, char *entry, char *val)< / td > < / tr >
2006-04-11 18:34:40 +04:00
2007-05-27 19:58:19 +04:00
< tr > < td class = "mdescLeft" > < / td > < td class = "mdescRight" > Set an entry in a dictionary. < a href = "#605a88057bac4c3249513fc588421c32" > < / a > < br > < / td > < / tr >
< tr > < td class = "memItemLeft" nowrap align = "right" valign = "top" > void < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "iniparser_8h.html#7b1a7f2492a35043867fa801b8f21e52" > iniparser_unset< / a > (dictionary *ini, char *entry)< / td > < / tr >
2006-04-11 18:34:40 +04:00
2007-05-27 19:58:19 +04:00
< tr > < td class = "mdescLeft" > < / td > < td class = "mdescRight" > Delete an entry in a dictionary. < a href = "#7b1a7f2492a35043867fa801b8f21e52" > < / a > < br > < / td > < / tr >
< tr > < td class = "memItemLeft" nowrap align = "right" valign = "top" > int < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "iniparser_8h.html#3d67c98bbc0cb5239f024ad54bdc63f1" > iniparser_find_entry< / a > (dictionary *ini, char *entry)< / td > < / tr >
2006-04-11 18:34:40 +04:00
2007-05-27 19:58:19 +04:00
< tr > < td class = "mdescLeft" > < / td > < td class = "mdescRight" > Finds out if a given entry exists in a dictionary. < a href = "#3d67c98bbc0cb5239f024ad54bdc63f1" > < / a > < br > < / td > < / tr >
< tr > < td class = "memItemLeft" nowrap align = "right" valign = "top" > dictionary * < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "iniparser_8h.html#b0be559bfb769224b3f1b75e26242a67" > iniparser_load< / a > (const char *ininame)< / td > < / tr >
2006-04-11 18:34:40 +04:00
2007-05-27 19:58:19 +04:00
< tr > < td class = "mdescLeft" > < / td > < td class = "mdescRight" > Parse an ini file and return an allocated dictionary object. < a href = "#b0be559bfb769224b3f1b75e26242a67" > < / a > < br > < / td > < / tr >
< tr > < td class = "memItemLeft" nowrap align = "right" valign = "top" > void < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "iniparser_8h.html#90549ee518523921886b74454ff872eb" > iniparser_freedict< / a > (dictionary *d)< / td > < / tr >
2006-04-11 18:34:40 +04:00
2007-05-27 19:58:19 +04:00
< tr > < td class = "mdescLeft" > < / td > < td class = "mdescRight" > Free all memory associated to an ini dictionary. < a href = "#90549ee518523921886b74454ff872eb" > < / a > < br > < / td > < / tr >
2006-04-11 18:34:40 +04:00
< / table >
< hr > < a name = "_details" > < / a > < h2 > Detailed Description< / h2 >
Parser for ini files.
< p >
2007-05-27 19:58:19 +04:00
< dl class = "author" compact > < dt > < b > Author:< / b > < / dt > < dd > N. Devillard < / dd > < / dl >
< dl class = "date" compact > < dt > < b > Date:< / b > < / dt > < dd > Mar 2000 < / dd > < / dl >
< dl class = "version" compact > < dt > < b > Version:< / b > < / dt > < dd > < dl class = "rcs" compact > < dt > < b > Revision< / b > < / dt > < dd > 1.23 < / dd > < / dl >
2006-04-11 18:34:40 +04:00
< / dd > < / dl >
< hr > < h2 > Function Documentation< / h2 >
2007-05-27 19:58:19 +04:00
< a class = "anchor" name = "046436b3489cd8854ba8e29109250324" > < / a > <!-- doxytag: member="iniparser.h::iniparser_dump" ref="046436b3489cd8854ba8e29109250324" args="(dictionary *d, FILE *f)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2006-04-11 18:34:40 +04:00
< tr >
2007-05-27 19:58:19 +04:00
< td class = "memname" > void iniparser_dump < / td >
< td > (< / td >
< td class = "paramtype" > dictionary * < / td >
< td class = "paramname" > < em > d< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > FILE * < / td >
< td class = "paramname" > < em > f< / em > < / td > < td > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td width = "100%" > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< / table >
2007-05-27 19:58:19 +04:00
< / div >
< div class = "memdoc" >
2006-04-11 18:34:40 +04:00
< p >
Dump a dictionary to an opened file pointer.
< p >
< dl compact > < 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 >
< / dl >
2007-05-27 19:58:19 +04:00
< dl class = "return" compact > < dt > < b > Returns:< / b > < / dt > < dd > void< / dd > < / dl >
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.
< / div >
< / div > < p >
< a class = "anchor" name = "ece0e32de371c9e9592d8333f816dfac" > < / a > <!-- doxytag: member="iniparser.h::iniparser_dump_ini" ref="ece0e32de371c9e9592d8333f816dfac" args="(dictionary *d, FILE *f)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2006-04-11 18:34:40 +04:00
< tr >
2007-05-27 19:58:19 +04:00
< td class = "memname" > void iniparser_dump_ini < / td >
< td > (< / td >
< td class = "paramtype" > dictionary * < / td >
< td class = "paramname" > < em > d< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > FILE * < / td >
< td class = "paramname" > < em > f< / em > < / td > < td > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td width = "100%" > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< / table >
2007-05-27 19:58:19 +04:00
< / div >
< div class = "memdoc" >
2006-04-11 18:34:40 +04:00
< p >
Save a dictionary to a loadable ini file.
< p >
< dl compact > < 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 >
< / dl >
2007-05-27 19:58:19 +04:00
< dl class = "return" compact > < dt > < b > Returns:< / b > < / dt > < dd > void< / dd > < / dl >
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.
< / div >
< / div > < p >
< a class = "anchor" name = "3d67c98bbc0cb5239f024ad54bdc63f1" > < / a > <!-- doxytag: member="iniparser.h::iniparser_find_entry" ref="3d67c98bbc0cb5239f024ad54bdc63f1" args="(dictionary *ini, char *entry)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2006-04-11 18:34:40 +04:00
< tr >
2007-05-27 19:58:19 +04:00
< td class = "memname" > int iniparser_find_entry < / td >
< td > (< / td >
< td class = "paramtype" > dictionary * < / td >
< td class = "paramname" > < em > ini< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > char * < / td >
< td class = "paramname" > < em > entry< / em > < / td > < td > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td width = "100%" > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< / table >
2007-05-27 19:58:19 +04:00
< / div >
< div class = "memdoc" >
2006-04-11 18:34:40 +04:00
< p >
Finds out if a given entry exists in a dictionary.
< p >
< dl compact > < 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 >
< / dl >
2007-05-27 19:58:19 +04:00
< dl class = "return" compact > < dt > < b > Returns:< / b > < / dt > < dd > integer 1 if entry exists, 0 otherwise< / dd > < / dl >
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.
< / div >
< / div > < p >
< a class = "anchor" name = "90549ee518523921886b74454ff872eb" > < / a > <!-- doxytag: member="iniparser.h::iniparser_freedict" ref="90549ee518523921886b74454ff872eb" 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 width = "100%" > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< / table >
2007-05-27 19:58:19 +04:00
< / div >
< div class = "memdoc" >
2006-04-11 18:34:40 +04:00
< p >
Free all memory associated to an ini dictionary.
< p >
< dl compact > < 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 >
< / dl >
2007-05-27 19:58:19 +04:00
< dl class = "return" compact > < dt > < b > Returns:< / b > < / dt > < dd > void< / dd > < / dl >
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.
< / div >
< / div > < p >
< a class = "anchor" name = "eb93c13fcbb75efaa396f53bfd73ff4d" > < / a > <!-- doxytag: member="iniparser.h::iniparser_getboolean" ref="eb93c13fcbb75efaa396f53bfd73ff4d" args="(dictionary *d, const char *key, int notfound)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2006-04-11 18:34:40 +04:00
< tr >
2007-05-27 19:58:19 +04:00
< td class = "memname" > int iniparser_getboolean < / td >
< td > (< / td >
< td class = "paramtype" > dictionary * < / td >
< td class = "paramname" > < em > d< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const char * < / td >
< td class = "paramname" > < em > key< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > int < / td >
< td class = "paramname" > < em > notfound< / em > < / td > < td > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td width = "100%" > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< / table >
2007-05-27 19:58:19 +04:00
< / div >
< div class = "memdoc" >
2006-04-11 18:34:40 +04:00
< p >
Get the string associated to a key, convert to a boolean.
< p >
< dl compact > < 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 >
< / dl >
2007-05-27 19:58:19 +04:00
< dl class = "return" compact > < dt > < b > Returns:< / b > < / dt > < dd > integer< / dd > < / dl >
2006-04-11 18:34:40 +04:00
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 >
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 >
2007-05-27 19:58:19 +04:00
The notfound value returned if no boolean is identified, does not necessarily have to be 0 or 1.
< / div >
< / div > < p >
< a class = "anchor" name = "480d35322f1252344cf2246ac21ee559" > < / a > <!-- doxytag: member="iniparser.h::iniparser_getdouble" ref="480d35322f1252344cf2246ac21ee559" args="(dictionary *d, char *key, double notfound)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2006-04-11 18:34:40 +04:00
< tr >
2007-05-27 19:58:19 +04:00
< td class = "memname" > double iniparser_getdouble < / td >
< td > (< / td >
< td class = "paramtype" > dictionary * < / td >
< td class = "paramname" > < em > d< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > char * < / td >
< td class = "paramname" > < em > key< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > double < / td >
< td class = "paramname" > < em > notfound< / em > < / td > < td > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td width = "100%" > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< / table >
2007-05-27 19:58:19 +04:00
< / div >
< div class = "memdoc" >
2006-04-11 18:34:40 +04:00
< p >
Get the string associated to a key, convert to a double.
< p >
< dl compact > < 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 >
< / dl >
2007-05-27 19:58:19 +04:00
< dl class = "return" compact > < dt > < b > Returns:< / b > < / dt > < dd > double< / dd > < / dl >
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.
< / div >
< / div > < p >
< a class = "anchor" name = "694eb1110f4200db8648820a0bb405fa" > < / a > <!-- doxytag: member="iniparser.h::iniparser_getint" ref="694eb1110f4200db8648820a0bb405fa" args="(dictionary *d, const char *key, int notfound)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2006-04-11 18:34:40 +04:00
< tr >
2007-05-27 19:58:19 +04:00
< td class = "memname" > int iniparser_getint < / td >
< td > (< / td >
< td class = "paramtype" > dictionary * < / td >
< td class = "paramname" > < em > d< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const char * < / td >
< td class = "paramname" > < em > key< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > int < / td >
< td class = "paramname" > < em > notfound< / em > < / td > < td > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td width = "100%" > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< / table >
2007-05-27 19:58:19 +04:00
< / div >
< div class = "memdoc" >
2006-04-11 18:34:40 +04:00
< p >
Get the string associated to a key, convert to an int.
< p >
< dl compact > < 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 >
< / dl >
2007-05-27 19:58:19 +04:00
< dl class = "return" compact > < dt > < b > Returns:< / b > < / dt > < dd > integer< / dd > < / dl >
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 >
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 >
Credits: Thanks to A. Becker for suggesting strtol()
< / div >
< / div > < p >
< a class = "anchor" name = "0b5d6cdc7587e2d27a30f5cdc4a91931" > < / a > <!-- doxytag: member="iniparser.h::iniparser_getnsec" ref="0b5d6cdc7587e2d27a30f5cdc4a91931" 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 width = "100%" > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< / table >
2007-05-27 19:58:19 +04:00
< / div >
< div class = "memdoc" >
2006-04-11 18:34:40 +04:00
< p >
Get number of sections in a dictionary.
< p >
< dl compact > < 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 >
< / dl >
2007-05-27 19:58:19 +04:00
< dl class = "return" compact > < dt > < b > Returns:< / b > < / dt > < dd > int Number of sections found in dictionary< / dd > < / dl >
2006-04-11 18:34:40 +04:00
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 >
This clearly fails in the case a section name contains a colon, but this should simply be avoided.< p >
2007-05-27 19:58:19 +04:00
This function returns -1 in case of error.
< / div >
< / div > < p >
< a class = "anchor" name = "393212be805f395bbfdeb1bafa8bb72a" > < / a > <!-- doxytag: member="iniparser.h::iniparser_getsecname" ref="393212be805f395bbfdeb1bafa8bb72a" args="(dictionary *d, int n)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2006-04-11 18:34:40 +04:00
< tr >
2007-05-27 19:58:19 +04:00
< td class = "memname" > char* iniparser_getsecname < / td >
< td > (< / td >
< td class = "paramtype" > dictionary * < / td >
< td class = "paramname" > < em > d< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > int < / td >
< td class = "paramname" > < em > n< / em > < / td > < td > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td width = "100%" > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< / table >
2007-05-27 19:58:19 +04:00
< / div >
< div class = "memdoc" >
2006-04-11 18:34:40 +04:00
< p >
Get name for section n in a dictionary.
< p >
< dl compact > < 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 >
< / dl >
2007-05-27 19:58:19 +04:00
< dl class = "return" compact > < dt > < b > Returns:< / b > < / dt > < dd > Pointer to char string< / dd > < / dl >
2006-04-11 18:34:40 +04:00
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 >
2007-05-27 19:58:19 +04:00
This function returns NULL in case of error.
< / div >
< / div > < p >
< a class = "anchor" name = "587eafb48937fdee8ae414ad7a666db8" > < / a > <!-- doxytag: member="iniparser.h::iniparser_getstr" ref="587eafb48937fdee8ae414ad7a666db8" args="(dictionary *d, const char *key)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2006-04-11 18:34:40 +04:00
< tr >
2007-05-27 19:58:19 +04:00
< td class = "memname" > char* iniparser_getstr < / td >
< td > (< / td >
< td class = "paramtype" > dictionary * < / td >
< td class = "paramname" > < em > d< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const char * < / td >
< td class = "paramname" > < em > key< / em > < / td > < td > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td width = "100%" > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< / table >
2007-05-27 19:58:19 +04:00
< / div >
< div class = "memdoc" >
2006-04-11 18:34:40 +04:00
< p >
Get the string associated to a key, return NULL if not found.
< p >
< dl compact > < 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 >
< / table >
< / dl >
2007-05-27 19:58:19 +04:00
< dl class = "return" compact > < dt > < b > Returns:< / b > < / dt > < dd > pointer to statically allocated character string, or NULL.< / dd > < / dl >
2006-04-11 18:34:40 +04:00
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, NULL is returned. The returned char pointer is pointing to a string allocated in the dictionary, do not free or modify it.< p >
2007-05-27 19:58:19 +04:00
This function is only provided for backwards compatibility with previous versions of iniparser. It is recommended to use < a class = "el" href = "iniparser_8h.html#7894f8480e1f254d4a1b4a31bdc51b46" > iniparser_getstring()< / a > instead.
< / div >
< / div > < p >
< a class = "anchor" name = "7894f8480e1f254d4a1b4a31bdc51b46" > < / a > <!-- doxytag: member="iniparser.h::iniparser_getstring" ref="7894f8480e1f254d4a1b4a31bdc51b46" args="(dictionary *d, const char *key, char *def)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2006-04-11 18:34:40 +04:00
< tr >
2007-05-27 19:58:19 +04:00
< td class = "memname" > char* iniparser_getstring < / td >
< td > (< / td >
< td class = "paramtype" > dictionary * < / td >
< td class = "paramname" > < em > d< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const char * < / td >
< td class = "paramname" > < em > key< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > char * < / td >
< td class = "paramname" > < em > def< / em > < / td > < td > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td width = "100%" > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< / table >
2007-05-27 19:58:19 +04:00
< / div >
< div class = "memdoc" >
2006-04-11 18:34:40 +04:00
< p >
Get the string associated to a key.
< p >
< dl compact > < 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 >
< / dl >
2007-05-27 19:58:19 +04:00
< dl class = "return" compact > < dt > < b > Returns:< / b > < / dt > < dd > pointer to statically allocated character string< / dd > < / dl >
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.
< / div >
< / div > < p >
< a class = "anchor" name = "b0be559bfb769224b3f1b75e26242a67" > < / a > <!-- doxytag: member="iniparser.h::iniparser_load" ref="b0be559bfb769224b3f1b75e26242a67" args="(const char *ininame)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > dictionary* iniparser_load < / td >
< td > (< / td >
< td class = "paramtype" > const char * < / td >
< td class = "paramname" > < em > ininame< / em > < / td >
< td > ) < / td >
< td width = "100%" > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< / table >
2007-05-27 19:58:19 +04:00
< / div >
< div class = "memdoc" >
2006-04-11 18:34:40 +04:00
< p >
Parse an ini file and return an allocated dictionary object.
< p >
< dl compact > < 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 >
< / dl >
2007-05-27 19:58:19 +04:00
< dl class = "return" compact > < dt > < b > Returns:< / b > < / dt > < dd > Pointer to newly allocated dictionary< / dd > < / dl >
2006-04-11 18:34:40 +04:00
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 >
2007-05-27 19:58:19 +04:00
The returned dictionary must be freed using < a class = "el" href = "iniparser_8h.html#90549ee518523921886b74454ff872eb" > iniparser_freedict()< / a > .
< / div >
< / div > < p >
< a class = "anchor" name = "605a88057bac4c3249513fc588421c32" > < / a > <!-- doxytag: member="iniparser.h::iniparser_setstr" ref="605a88057bac4c3249513fc588421c32" args="(dictionary *ini, char *entry, char *val)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2006-04-11 18:34:40 +04:00
< tr >
2007-05-27 19:58:19 +04:00
< td class = "memname" > int iniparser_setstr < / td >
< td > (< / td >
< td class = "paramtype" > dictionary * < / td >
< td class = "paramname" > < em > ini< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > char * < / td >
< td class = "paramname" > < em > entry< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > char * < / td >
< td class = "paramname" > < em > val< / em > < / td > < td > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td width = "100%" > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< / table >
2007-05-27 19:58:19 +04:00
< / div >
< div class = "memdoc" >
2006-04-11 18:34:40 +04:00
< p >
Set an entry in a dictionary.
< p >
< dl compact > < 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 >
< / dl >
2007-05-27 19:58:19 +04:00
< dl class = "return" compact > < dt > < b > Returns:< / b > < / dt > < dd > int 0 if Ok, -1 otherwise.< / dd > < / dl >
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.
< / div >
< / div > < p >
< a class = "anchor" name = "7b1a7f2492a35043867fa801b8f21e52" > < / a > <!-- doxytag: member="iniparser.h::iniparser_unset" ref="7b1a7f2492a35043867fa801b8f21e52" args="(dictionary *ini, char *entry)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2006-04-11 18:34:40 +04:00
< tr >
2007-05-27 19:58:19 +04:00
< td class = "memname" > void iniparser_unset < / td >
< td > (< / td >
< td class = "paramtype" > dictionary * < / td >
< td class = "paramname" > < em > ini< / em > , < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > char * < / td >
< td class = "paramname" > < em > entry< / em > < / td > < td > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< tr >
2007-05-27 19:58:19 +04:00
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td width = "100%" > < / td >
2006-04-11 18:34:40 +04:00
< / tr >
< / table >
2007-05-27 19:58:19 +04:00
< / div >
< div class = "memdoc" >
2006-04-11 18:34:40 +04:00
< p >
Delete an entry in a dictionary.
< p >
< dl compact > < 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 >
< / dl >
2007-05-27 19:58:19 +04:00
< dl class = "return" compact > < dt > < b > Returns:< / b > < / dt > < dd > void< / dd > < / dl >
If the given entry can be found, it is deleted from the dictionary.
< / div >
< / div > < p >
2006-04-11 18:34:40 +04:00
< / body >
< / html >