<!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>libglom-1.24: libglom Reference Manual</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">libglom-1.24  <span id="projectnumber">1.24.1</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 class="current"><a href="index.html"><span>Main Page</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li><a href="annotated.html"><span>Classes</span></a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="headertitle"> <div class="title">libglom Reference Manual </div> </div> </div><!--header--> <div class="contents"> <div class="textblock"><h1><a class="anchor" id="description"></a> Description</h1> <p>libglom provides API to access <a class="el" href="namespaceGlom.html">Glom</a>'s XML-based <a class="el" href="classGlom_1_1Document.html">Glom::Document</a> structure. AppWindows may use it to load a .glom document and then call methods on the document to discover the connection details and the data structure, including:</p> <ul> <li>The list of tables</li> <li>The list of fields in each table</li> <li>The details of each field, such as field type, title, default value, formatting, etc.</li> <li>The relationships between tables.</li> <li>The layout of fields on list and details views.</li> <li>The layout of print layouts.</li> <li>The layout of reports.</li> </ul> <p>libglom also contains utility functions, such as <a class="el" href="namespaceGlom_1_1Utils.html#a2f26e87b17eab858036651566ea74f65" title="Generate a SQL statement to SELECT field values, even if the fields are in related (or doubly related...">Glom::Utils::build_sql_select_with_where_clause()</a>, to build the complicated SQL queries used by <a class="el" href="namespaceGlom.html">Glom</a> to retrieve information from the database.</p> <p>See <a href="http://git.gnome.org/browse/glom/tree/glom/libglom/example_document_load.cc">http://git.gnome.org/browse/glom/tree/glom/libglom/example_document_load.cc</a> for a small working example.</p> <h1><a class="anchor" id="warning"></a> Warning</h1> <p>libglom is not yet API stable, not properly documented, not thoroughly tested, and not yet really intended for serious use by applications other than <a href="http://www.glom.org/">Glom</a> and <a href="http://gitorious.org/qlom">Qlom</a>.</p> <h1><a class="anchor" id="basics"></a> Basic Usage</h1> <p>Include the individual libglom headers. For instance: </p> <div class="fragment"><div class="line"><span class="preprocessor">#include <libglom/document/document.h></span></div> </div><!-- fragment --><p>If your source file is <code>program.cc</code>, you can compile it with: </p> <div class="fragment"><div class="line">g++ program.cc -o program `pkg-config --cflags --libs glom-1.24`</div> </div><!-- fragment --><p>Alternatively, if using autoconf, use the following in <code>configure.ac:</code> </p> <div class="fragment"><div class="line">PKG_CHECK_MODULES([DEPS], [glom-1.24])</div> </div><!-- fragment --><p> Then use the generated <code>DEPS_CFLAGS</code> and <code>DEPS_LIBS</code> variables in the project <code>Makefile.am</code> files. For example: </p> <div class="fragment"><div class="line">program_CPPFLAGS = $(DEPS_CFLAGS)</div> <div class="line">program_LDADD = $(DEPS_LIBS)</div> </div><!-- fragment --> </div></div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated 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>