<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.3.1"/> <title>dmlite: include/dmlite/c/any.h File Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">dmlite  <span id="projectnumber">0.6</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.3.1 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li><a href="annotated.html"><span>Classes</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>File Members</span></a></li> </ul> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_c6836824bdef15bafab59627cccf2d55.html">dmlite</a></li><li class="navelem"><a class="el" href="dir_d445b4083d3c7359781dc9ee11dbbc0e.html">c</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#typedef-members">Typedefs</a> | <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">any.h File Reference</div> </div> </div><!--header--> <div class="contents"> <p>Opaque handler to pass different types of values to the API. <a href="#details">More...</a></p> <div class="textblock"><code>#include "<a class="el" href="config_8h_source.html">../common/config.h</a>"</code><br/> <code>#include <stddef.h></code><br/> <code>#include <stdint.h></code><br/> </div><div class="textblock"><div class="dynheader"> Include dependency graph for any.h:</div> <div class="dyncontent"> <div class="center"><img src="any_8h__incl.png" border="0" usemap="#include_2dmlite_2c_2any_8h" alt=""/></div> <map name="include_2dmlite_2c_2any_8h" id="include_2dmlite_2c_2any_8h"> <area shape="rect" id="node3" href="config_8h.html" title="Header generated by CMake with the build configuration used." alt="" coords="5,80,139,107"/></map> </div> </div><div class="textblock"><div class="dynheader"> This graph shows which files directly or indirectly include this file:</div> <div class="dyncontent"> <div class="center"><img src="any_8h__dep__incl.png" border="0" usemap="#include_2dmlite_2c_2any_8hdep" alt=""/></div> <map name="include_2dmlite_2c_2any_8hdep" id="include_2dmlite_2c_2any_8hdep"> <area shape="rect" id="node3" href="dmlite_8h.html" title="C wrapper for DMLite." alt="" coords="117,80,280,107"/><area shape="rect" id="node7" href="inode_8h.html" title="C wrapper for DMLite INode API." alt="" coords="242,155,400,181"/><area shape="rect" id="node10" href="pool_8h.html" title="C wrapper for DMLite Pool API." alt="" coords="373,229,525,256"/><area shape="rect" id="node12" href="io_8h.html" title="C wrapper for I/O interfaces." alt="" coords="33,304,172,331"/><area shape="rect" id="node19" href="utils_8h.html" title="C wrapper for DMLite utils." alt="" coords="355,80,507,107"/><area shape="rect" id="node5" href="catalog_8h.html" title="C wrapper for DMLite Catalog API." alt="" coords="179,229,349,256"/><area shape="rect" id="node14" href="checksums_8h.html" title="include/dmlite/c/checksums.h" alt="" coords="5,379,200,405"/></map> </div> </div> <p><a href="any_8h_source.html">Go to the source code of this file.</a></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a> Typedefs</h2></td></tr> <tr class="memitem:ab3cac35938c390304b4a1f7b6f816b34"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a></td></tr> <tr class="memdesc:ab3cac35938c390304b4a1f7b6f816b34"><td class="mdescLeft"> </td><td class="mdescRight">Used to pass configuration values. <a href="#ab3cac35938c390304b4a1f7b6f816b34">More...</a><br/></td></tr> <tr class="separator:ab3cac35938c390304b4a1f7b6f816b34"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad0a8d66d6e94fe1181a146b046ceb8c6"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a></td></tr> <tr class="memdesc:ad0a8d66d6e94fe1181a146b046ceb8c6"><td class="mdescLeft"> </td><td class="mdescRight">Handles key->value pairs. <a href="#ad0a8d66d6e94fe1181a146b046ceb8c6">More...</a><br/></td></tr> <tr class="separator:ad0a8d66d6e94fe1181a146b046ceb8c6"><td class="memSeparator" colspan="2"> </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:a908aed1602e8a74659c063cb41f65b69"><td class="memItemLeft" align="right" valign="top"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a908aed1602e8a74659c063cb41f65b69">dmlite_any_new_string</a> (const char *str)</td></tr> <tr class="memdesc:a908aed1602e8a74659c063cb41f65b69"><td class="mdescLeft"> </td><td class="mdescRight">Creates a new dmlite_any. <a href="#a908aed1602e8a74659c063cb41f65b69">More...</a><br/></td></tr> <tr class="separator:a908aed1602e8a74659c063cb41f65b69"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a60f6e30e516f7dacc8fcc9964daa7eb8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a60f6e30e516f7dacc8fcc9964daa7eb8">dmlite_any_new_long</a> (long l)</td></tr> <tr class="memdesc:a60f6e30e516f7dacc8fcc9964daa7eb8"><td class="mdescLeft"> </td><td class="mdescRight">Creates a new dmlite_any. <a href="#a60f6e30e516f7dacc8fcc9964daa7eb8">More...</a><br/></td></tr> <tr class="separator:a60f6e30e516f7dacc8fcc9964daa7eb8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a73391ae730324e87f4ee53ce725e3e6d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a73391ae730324e87f4ee53ce725e3e6d">dmlite_any_new_s64</a> (int64_t i)</td></tr> <tr class="memdesc:a73391ae730324e87f4ee53ce725e3e6d"><td class="mdescLeft"> </td><td class="mdescRight">Creates a new dmlite_any from an int64_t type. <a href="#a73391ae730324e87f4ee53ce725e3e6d">More...</a><br/></td></tr> <tr class="separator:a73391ae730324e87f4ee53ce725e3e6d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6cf9e08533d78152b5b09f1e2630c24d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a6cf9e08533d78152b5b09f1e2630c24d">dmlite_any_new_u64</a> (uint64_t i)</td></tr> <tr class="memdesc:a6cf9e08533d78152b5b09f1e2630c24d"><td class="mdescLeft"> </td><td class="mdescRight">Creates a new dmlite_any from an uint64_t type. <a href="#a6cf9e08533d78152b5b09f1e2630c24d">More...</a><br/></td></tr> <tr class="separator:a6cf9e08533d78152b5b09f1e2630c24d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a282b7315f9c08926d81474e9c4517051"><td class="memItemLeft" align="right" valign="top"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a282b7315f9c08926d81474e9c4517051">dmlite_any_new_string_array</a> (unsigned n, const char **strv)</td></tr> <tr class="memdesc:a282b7315f9c08926d81474e9c4517051"><td class="mdescLeft"> </td><td class="mdescRight">Creates a new dmlite_any. <a href="#a282b7315f9c08926d81474e9c4517051">More...</a><br/></td></tr> <tr class="separator:a282b7315f9c08926d81474e9c4517051"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7aff15aafebc05de7bc23f12299669ed"><td class="memItemLeft" align="right" valign="top"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a7aff15aafebc05de7bc23f12299669ed">dmlite_any_new_long_array</a> (unsigned n, long *lv)</td></tr> <tr class="memdesc:a7aff15aafebc05de7bc23f12299669ed"><td class="mdescLeft"> </td><td class="mdescRight">Creates a new dmlite_any. <a href="#a7aff15aafebc05de7bc23f12299669ed">More...</a><br/></td></tr> <tr class="separator:a7aff15aafebc05de7bc23f12299669ed"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a26a7315fc0b7fded5f0718bd42dc64f2"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a26a7315fc0b7fded5f0718bd42dc64f2">dmlite_any_free</a> (<a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> *any)</td></tr> <tr class="memdesc:a26a7315fc0b7fded5f0718bd42dc64f2"><td class="mdescLeft"> </td><td class="mdescRight">Frees a dmlite_any. <a href="#a26a7315fc0b7fded5f0718bd42dc64f2">More...</a><br/></td></tr> <tr class="separator:a26a7315fc0b7fded5f0718bd42dc64f2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a15ae7b9378e03074b47332d2692e42c3"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a15ae7b9378e03074b47332d2692e42c3">dmlite_any_to_string</a> (const <a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> *any, char *buffer, size_t bsize)</td></tr> <tr class="memdesc:a15ae7b9378e03074b47332d2692e42c3"><td class="mdescLeft"> </td><td class="mdescRight">Gets the string interpretation of the dmlite_any. <a href="#a15ae7b9378e03074b47332d2692e42c3">More...</a><br/></td></tr> <tr class="separator:a15ae7b9378e03074b47332d2692e42c3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a30a5c204c2a0d1874193d2d972935420"><td class="memItemLeft" align="right" valign="top">long </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a30a5c204c2a0d1874193d2d972935420">dmlite_any_to_long</a> (const <a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> *any)</td></tr> <tr class="memdesc:a30a5c204c2a0d1874193d2d972935420"><td class="mdescLeft"> </td><td class="mdescRight">Returns the long interpretation of they dmlite_any. <a href="#a30a5c204c2a0d1874193d2d972935420">More...</a><br/></td></tr> <tr class="separator:a30a5c204c2a0d1874193d2d972935420"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae129020041df7712e95689597bd81290"><td class="memItemLeft" align="right" valign="top">int64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#ae129020041df7712e95689597bd81290">dmlite_any_to_s64</a> (const <a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> *any)</td></tr> <tr class="memdesc:ae129020041df7712e95689597bd81290"><td class="mdescLeft"> </td><td class="mdescRight">Returns the int64_t interpretation of they dmlite_any. <a href="#ae129020041df7712e95689597bd81290">More...</a><br/></td></tr> <tr class="separator:ae129020041df7712e95689597bd81290"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a879022eeacea2fa45fa4baefccc0885e"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a879022eeacea2fa45fa4baefccc0885e">dmlite_any_to_u64</a> (const <a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> *any)</td></tr> <tr class="memdesc:a879022eeacea2fa45fa4baefccc0885e"><td class="mdescLeft"> </td><td class="mdescRight">Returns the uint64_t interpretation of they dmlite_any. <a href="#a879022eeacea2fa45fa4baefccc0885e">More...</a><br/></td></tr> <tr class="separator:a879022eeacea2fa45fa4baefccc0885e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af5807b23e72ceb742187a57f8e11f1c4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#af5807b23e72ceb742187a57f8e11f1c4">dmlite_any_dict_new</a> ()</td></tr> <tr class="memdesc:af5807b23e72ceb742187a57f8e11f1c4"><td class="mdescLeft"> </td><td class="mdescRight">Created a new generic dictionary. <a href="#af5807b23e72ceb742187a57f8e11f1c4">More...</a><br/></td></tr> <tr class="separator:af5807b23e72ceb742187a57f8e11f1c4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6960b4f6448a4a4032ec56bb034ac978"><td class="memItemLeft" align="right" valign="top"><a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a6960b4f6448a4a4032ec56bb034ac978">dmlite_any_dict_copy</a> (const <a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> *dict)</td></tr> <tr class="memdesc:a6960b4f6448a4a4032ec56bb034ac978"><td class="mdescLeft"> </td><td class="mdescRight">Make a copy of the dictionary. <a href="#a6960b4f6448a4a4032ec56bb034ac978">More...</a><br/></td></tr> <tr class="separator:a6960b4f6448a4a4032ec56bb034ac978"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ace1d3f0d8a13ce582a79e00319cf1929"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#ace1d3f0d8a13ce582a79e00319cf1929">dmlite_any_dict_free</a> (<a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> *d)</td></tr> <tr class="memdesc:ace1d3f0d8a13ce582a79e00319cf1929"><td class="mdescLeft"> </td><td class="mdescRight">Frees a dmlite_any_dict. <a href="#ace1d3f0d8a13ce582a79e00319cf1929">More...</a><br/></td></tr> <tr class="separator:ace1d3f0d8a13ce582a79e00319cf1929"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae9fc5dc81aa81a54c37f0cf31043d29e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#ae9fc5dc81aa81a54c37f0cf31043d29e">dmlite_any_dict_clear</a> (<a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> *d)</td></tr> <tr class="memdesc:ae9fc5dc81aa81a54c37f0cf31043d29e"><td class="mdescLeft"> </td><td class="mdescRight">Clears the dictionary. <a href="#ae9fc5dc81aa81a54c37f0cf31043d29e">More...</a><br/></td></tr> <tr class="separator:ae9fc5dc81aa81a54c37f0cf31043d29e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a372397075a2beab931bcb89e36ae6c48"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a372397075a2beab931bcb89e36ae6c48">dmlite_any_dict_insert</a> (<a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> *d, const char *k, const <a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> *v)</td></tr> <tr class="memdesc:a372397075a2beab931bcb89e36ae6c48"><td class="mdescLeft"> </td><td class="mdescRight">Insert a new dmlite_any value into the dictionary. <a href="#a372397075a2beab931bcb89e36ae6c48">More...</a><br/></td></tr> <tr class="separator:a372397075a2beab931bcb89e36ae6c48"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a44ecafe09dedc99cbac2fdc118459dfa"><td class="memItemLeft" align="right" valign="top">unsigned long </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a44ecafe09dedc99cbac2fdc118459dfa">dmlite_any_dict_count</a> (const <a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> *d)</td></tr> <tr class="memdesc:a44ecafe09dedc99cbac2fdc118459dfa"><td class="mdescLeft"> </td><td class="mdescRight">Returns how many elements there are in a specific dictionary. <a href="#a44ecafe09dedc99cbac2fdc118459dfa">More...</a><br/></td></tr> <tr class="separator:a44ecafe09dedc99cbac2fdc118459dfa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a65c71bcbe78f83bc2a2165adc96e5efd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a65c71bcbe78f83bc2a2165adc96e5efd">dmlite_any_dict_get</a> (const <a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> *d, const char *k)</td></tr> <tr class="memdesc:a65c71bcbe78f83bc2a2165adc96e5efd"><td class="mdescLeft"> </td><td class="mdescRight">Returns the value associated with the key k. <a href="#a65c71bcbe78f83bc2a2165adc96e5efd">More...</a><br/></td></tr> <tr class="separator:a65c71bcbe78f83bc2a2165adc96e5efd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9fa409ba80c05f09e066b621ccfdb53e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a9fa409ba80c05f09e066b621ccfdb53e">dmlite_any_dict_erase</a> (<a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> *d, const char *k)</td></tr> <tr class="memdesc:a9fa409ba80c05f09e066b621ccfdb53e"><td class="mdescLeft"> </td><td class="mdescRight">Removes a key-value from the dictionary. <a href="#a9fa409ba80c05f09e066b621ccfdb53e">More...</a><br/></td></tr> <tr class="separator:a9fa409ba80c05f09e066b621ccfdb53e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0fb2f61152043cfe84a0b5093a09dc8c"><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a0fb2f61152043cfe84a0b5093a09dc8c">dmlite_any_dict_to_json</a> (const <a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> *d, char *buffer, size_t bsize)</td></tr> <tr class="memdesc:a0fb2f61152043cfe84a0b5093a09dc8c"><td class="mdescLeft"> </td><td class="mdescRight">Generates a JSON serialization of the dictionary. <a href="#a0fb2f61152043cfe84a0b5093a09dc8c">More...</a><br/></td></tr> <tr class="separator:a0fb2f61152043cfe84a0b5093a09dc8c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9015897e0328e8ad390e7a029d33a74e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a9015897e0328e8ad390e7a029d33a74e">dmlite_any_dict_from_json</a> (const char *json)</td></tr> <tr class="memdesc:a9015897e0328e8ad390e7a029d33a74e"><td class="mdescLeft"> </td><td class="mdescRight">Populates a dmlite_any_dict from a JSON string. <a href="#a9015897e0328e8ad390e7a029d33a74e">More...</a><br/></td></tr> <tr class="separator:a9015897e0328e8ad390e7a029d33a74e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a96e93d0351cff85bf84442619f73d1c5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#a96e93d0351cff85bf84442619f73d1c5">dmlite_any_dict_keys</a> (const <a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> *d, unsigned *nkeys, char ***keys)</td></tr> <tr class="memdesc:a96e93d0351cff85bf84442619f73d1c5"><td class="mdescLeft"> </td><td class="mdescRight">Puts in keys a pointer to an array of strings with all the available keys in d. <a href="#a96e93d0351cff85bf84442619f73d1c5">More...</a><br/></td></tr> <tr class="separator:a96e93d0351cff85bf84442619f73d1c5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aca4f376fa5620263d9fc4c88237a8813"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="any_8h.html#aca4f376fa5620263d9fc4c88237a8813">dmlite_any_dict_keys_free</a> (unsigned n, char **keys)</td></tr> <tr class="memdesc:aca4f376fa5620263d9fc4c88237a8813"><td class="mdescLeft"> </td><td class="mdescRight">Frees an array of strings allocated by dmlite_any_dict_keys. <a href="#aca4f376fa5620263d9fc4c88237a8813">More...</a><br/></td></tr> <tr class="separator:aca4f376fa5620263d9fc4c88237a8813"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>Opaque handler to pass different types of values to the API. </p> <dl class="section author"><dt>Author</dt><dd>Alejandro Álvarez Ayllon <a href="#" onclick="location.href='mai'+'lto:'+'aal'+'va'+'rez'+'@c'+'ern'+'.c'+'h'; return false;">aalva<span style="display: none;">.nosp@m.</span>rez@<span style="display: none;">.nosp@m.</span>cern.<span style="display: none;">.nosp@m.</span>ch</a> </dd></dl> <dl class="section note"><dt>Note</dt><dd>Basically it wraps boost::any and <a class="el" href="structdmlite_1_1_extensible.html" title="Helpful typedef for KeyValue containers.">dmlite::Extensible</a>. </dd></dl> </div><h2 class="groupheader">Typedef Documentation</h2> <a class="anchor" id="ab3cac35938c390304b4a1f7b6f816b34"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> <a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a></td> </tr> </table> </div><div class="memdoc"> <p>Used to pass configuration values. </p> </div> </div> <a class="anchor" id="ad0a8d66d6e94fe1181a146b046ceb8c6"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> <a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a></td> </tr> </table> </div><div class="memdoc"> <p>Handles key->value pairs. </p> </div> </div> <h2 class="groupheader">Function Documentation</h2> <a class="anchor" id="ae9fc5dc81aa81a54c37f0cf31043d29e"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dmlite_any_dict_clear </td> <td>(</td> <td class="paramtype"><a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> * </td> <td class="paramname"><em>d</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Clears the dictionary. </p> </div> </div> <a class="anchor" id="a6960b4f6448a4a4032ec56bb034ac978"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a>* dmlite_any_dict_copy </td> <td>(</td> <td class="paramtype">const <a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> * </td> <td class="paramname"><em>dict</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Make a copy of the dictionary. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dict</td><td>The original </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>A newly allocated copy of dict. </dd></dl> </div> </div> <a class="anchor" id="a44ecafe09dedc99cbac2fdc118459dfa"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">unsigned long dmlite_any_dict_count </td> <td>(</td> <td class="paramtype">const <a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> * </td> <td class="paramname"><em>d</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Returns how many elements there are in a specific dictionary. </p> </div> </div> <a class="anchor" id="a9fa409ba80c05f09e066b621ccfdb53e"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dmlite_any_dict_erase </td> <td>(</td> <td class="paramtype"><a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> * </td> <td class="paramname"><em>d</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>k</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Removes a key-value from the dictionary. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">d</td><td>The dictionary. </td></tr> <tr><td class="paramname">k</td><td>The key to be removed. </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="ace1d3f0d8a13ce582a79e00319cf1929"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dmlite_any_dict_free </td> <td>(</td> <td class="paramtype"><a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> * </td> <td class="paramname"><em>d</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Frees a dmlite_any_dict. </p> </div> </div> <a class="anchor" id="a9015897e0328e8ad390e7a029d33a74e"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a>* dmlite_any_dict_from_json </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>json</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Populates a dmlite_any_dict from a JSON string. </p> </div> </div> <a class="anchor" id="a65c71bcbe78f83bc2a2165adc96e5efd"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a>* dmlite_any_dict_get </td> <td>(</td> <td class="paramtype">const <a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> * </td> <td class="paramname"><em>d</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>k</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Returns the value associated with the key k. </p> <dl class="section return"><dt>Returns</dt><dd>NULL if not found. </dd></dl> </div> </div> <a class="anchor" id="a372397075a2beab931bcb89e36ae6c48"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dmlite_any_dict_insert </td> <td>(</td> <td class="paramtype"><a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> * </td> <td class="paramname"><em>d</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>k</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> * </td> <td class="paramname"><em>v</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Insert a new dmlite_any value into the dictionary. </p> <p>Replaces if already present. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">d</td><td>The dictionary. </td></tr> <tr><td class="paramname">k</td><td>The key. </td></tr> <tr><td class="paramname">v</td><td>The value. </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a96e93d0351cff85bf84442619f73d1c5"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dmlite_any_dict_keys </td> <td>(</td> <td class="paramtype">const <a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> * </td> <td class="paramname"><em>d</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned * </td> <td class="paramname"><em>nkeys</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">char *** </td> <td class="paramname"><em>keys</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Puts in keys a pointer to an array of strings with all the available keys in d. </p> <p>Use dmlite_any_dict_keys_free to free. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">d</td><td>The Dictionary. </td></tr> <tr><td class="paramname">nkeys</td><td>Will be set to the number of stored keys. </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="aca4f376fa5620263d9fc4c88237a8813"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dmlite_any_dict_keys_free </td> <td>(</td> <td class="paramtype">unsigned </td> <td class="paramname"><em>n</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">char ** </td> <td class="paramname"><em>keys</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Frees an array of strings allocated by dmlite_any_dict_keys. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">n</td><td>The number of keys in **keys </td></tr> <tr><td class="paramname">keys</td><td>The array of keys. </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="af5807b23e72ceb742187a57f8e11f1c4"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a>* dmlite_any_dict_new </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Created a new generic dictionary. </p> <dl class="section return"><dt>Returns</dt><dd>A newly allocated dmlite_any_dict. </dd></dl> </div> </div> <a class="anchor" id="a0fb2f61152043cfe84a0b5093a09dc8c"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">char* dmlite_any_dict_to_json </td> <td>(</td> <td class="paramtype">const <a class="el" href="any_8h.html#ad0a8d66d6e94fe1181a146b046ceb8c6">dmlite_any_dict</a> * </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>buffer</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>bsize</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Generates a JSON serialization of the dictionary. </p> <dl class="section return"><dt>Returns</dt><dd>The same pointer as buffer. </dd></dl> </div> </div> <a class="anchor" id="a26a7315fc0b7fded5f0718bd42dc64f2"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dmlite_any_free </td> <td>(</td> <td class="paramtype"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> * </td> <td class="paramname"><em>any</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Frees a dmlite_any. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">any</td><td>The dmlite_any to destroy. </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a60f6e30e516f7dacc8fcc9964daa7eb8"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a>* dmlite_any_new_long </td> <td>(</td> <td class="paramtype">long </td> <td class="paramname"><em>l</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Creates a new dmlite_any. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">l</td><td>The long that will be wrapped. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>A newly allocated dmlite_any. </dd></dl> </div> </div> <a class="anchor" id="a7aff15aafebc05de7bc23f12299669ed"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a>* dmlite_any_new_long_array </td> <td>(</td> <td class="paramtype">unsigned </td> <td class="paramname"><em>n</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">long * </td> <td class="paramname"><em>lv</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Creates a new dmlite_any. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">n</td><td>The number of elements. </td></tr> <tr><td class="paramname">lv</td><td>The longs that will be wrapped. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>A newly allocated dmlite_any. </dd></dl> <dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000002">Deprecated:</a></b></dt><dd>Use dmlite_set_array instead. </dd></dl> </div> </div> <a class="anchor" id="a73391ae730324e87f4ee53ce725e3e6d"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a>* dmlite_any_new_s64 </td> <td>(</td> <td class="paramtype">int64_t </td> <td class="paramname"><em>i</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Creates a new dmlite_any from an int64_t type. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">i</td><td>The int64_t value. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>A newly allocated dmlite_any. </dd></dl> </div> </div> <a class="anchor" id="a908aed1602e8a74659c063cb41f65b69"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a>* dmlite_any_new_string </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Creates a new dmlite_any. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">str</td><td>The string that will be wrapped. It is safe to free afterwards. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>A newly allocated dmlite_any. </dd></dl> </div> </div> <a class="anchor" id="a282b7315f9c08926d81474e9c4517051"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a>* dmlite_any_new_string_array </td> <td>(</td> <td class="paramtype">unsigned </td> <td class="paramname"><em>n</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char ** </td> <td class="paramname"><em>strv</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Creates a new dmlite_any. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">n</td><td>The number of elements. </td></tr> <tr><td class="paramname">strv</td><td>The strings that will be wrapped. It is safe to free afterwards. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>A newly allocated dmlite_any. </dd></dl> <dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000001">Deprecated:</a></b></dt><dd>Use dmlite_set_array instead. </dd></dl> </div> </div> <a class="anchor" id="a6cf9e08533d78152b5b09f1e2630c24d"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a>* dmlite_any_new_u64 </td> <td>(</td> <td class="paramtype">uint64_t </td> <td class="paramname"><em>i</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Creates a new dmlite_any from an uint64_t type. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">i</td><td>The uint64_t value. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>A newly allocated dmlite_any. </dd></dl> </div> </div> <a class="anchor" id="a30a5c204c2a0d1874193d2d972935420"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">long dmlite_any_to_long </td> <td>(</td> <td class="paramtype">const <a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> * </td> <td class="paramname"><em>any</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Returns the long interpretation of they dmlite_any. </p> <p>Defaults to 0. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">any</td><td>The dmlite_any to convert. </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="ae129020041df7712e95689597bd81290"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int64_t dmlite_any_to_s64 </td> <td>(</td> <td class="paramtype">const <a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> * </td> <td class="paramname"><em>any</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Returns the int64_t interpretation of they dmlite_any. </p> <p>Defaults to 0. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">any</td><td>The dmlite_any to convert. </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a15ae7b9378e03074b47332d2692e42c3"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void dmlite_any_to_string </td> <td>(</td> <td class="paramtype">const <a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> * </td> <td class="paramname"><em>any</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">char * </td> <td class="paramname"><em>buffer</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>bsize</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Gets the string interpretation of the dmlite_any. </p> <p>Defaults to "". </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">any</td><td>The dmlite_any to convert. </td></tr> <tr><td class="paramname">buffer</td><td>Where to put the string. </td></tr> <tr><td class="paramname">bsize</td><td>The size of the buffer. </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a879022eeacea2fa45fa4baefccc0885e"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint64_t dmlite_any_to_u64 </td> <td>(</td> <td class="paramtype">const <a class="el" href="any_8h.html#ab3cac35938c390304b4a1f7b6f816b34">dmlite_any</a> * </td> <td class="paramname"><em>any</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Returns the uint64_t interpretation of they dmlite_any. </p> <p>Defaults to 0. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">any</td><td>The dmlite_any to convert. </td></tr> </table> </dd> </dl> </div> </div> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated on Fri Jul 12 2013 07:34:22 for dmlite by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.3.1 </small></address> </body> </html>