<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>prelude</title> <meta name="generator" content="DocBook XSL Stylesheets V1.78.1"> <link rel="home" href="index.html" title="Prelude library Reference Manual"> <link rel="up" href="pt01.html" title="Part I. Using libprelude to interoperate with prelude-manager"> <link rel="prev" href="pt01.html" title="Part I. Using libprelude to interoperate with prelude-manager"> <link rel="next" href="libprelude-prelude-client.html" title="prelude-client"> <meta name="generator" content="GTK-Doc V1.19 (XML mode)"> <link rel="stylesheet" href="style.css" type="text/css"> </head> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> <tr valign="middle"> <td><a accesskey="p" href="pt01.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> <td><a accesskey="u" href="pt01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> <th width="100%" align="center">Prelude library Reference Manual</th> <td><a accesskey="n" href="libprelude-prelude-client.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> </tr> <tr><td colspan="5" class="shortcuts"> <a href="#libprelude-prelude.synopsis" class="shortcut">Top</a> | <a href="#libprelude-prelude.description" class="shortcut">Description</a> </td></tr> </table> <div class="refentry"> <a name="libprelude-prelude"></a><div class="titlepage"></div> <div class="refnamediv"><table width="100%"><tr> <td valign="top"> <h2><span class="refentrytitle"><a name="libprelude-prelude.top_of_page"></a>prelude</span></h2> <p>prelude — Initializing the library</p> </td> <td valign="top" align="right"></td> </tr></table></div> <div class="refsynopsisdiv"> <a name="libprelude-prelude.synopsis"></a><h2>Synopsis</h2> <pre class="synopsis">#define <a class="link" href="libprelude-prelude.html#LIBPRELUDE-VERSION:CAPS" title="LIBPRELUDE_VERSION">LIBPRELUDE_VERSION</a> <span class="returnvalue">int</span> <a class="link" href="libprelude-prelude.html#prelude-init" title="prelude_init ()">prelude_init</a> (<em class="parameter"><code><span class="type">int</span> *argc</code></em>, <em class="parameter"><code><span class="type">char</span> **argv</code></em>); <span class="returnvalue">void</span> <a class="link" href="libprelude-prelude.html#prelude-deinit" title="prelude_deinit ()">prelude_deinit</a> (<em class="parameter"><code><span class="type">void</span></code></em>); const <span class="returnvalue">char</span> * <a class="link" href="libprelude-prelude.html#prelude-check-version" title="prelude_check_version ()">prelude_check_version</a> (<em class="parameter"><code>const <span class="type">char</span> *req_version</code></em>); <span class="returnvalue">int</span> <a class="link" href="libprelude-prelude.html#prelude-thread-init" title="prelude_thread_init ()">prelude_thread_init</a> (<em class="parameter"><code><span class="type">void</span> *future_use</code></em>); <span class="returnvalue">void</span> <a class="link" href="libprelude-prelude.html#prelude-fork-child" title="prelude_fork_child ()">prelude_fork_child</a> (<em class="parameter"><code><span class="type">void</span></code></em>); <span class="returnvalue">void</span> <a class="link" href="libprelude-prelude.html#prelude-fork-parent" title="prelude_fork_parent ()">prelude_fork_parent</a> (<em class="parameter"><code><span class="type">void</span></code></em>); <span class="returnvalue">void</span> <a class="link" href="libprelude-prelude.html#prelude-fork-prepare" title="prelude_fork_prepare ()">prelude_fork_prepare</a> (<em class="parameter"><code><span class="type">void</span></code></em>); </pre> </div> <div class="refsect1"> <a name="libprelude-prelude.description"></a><h2>Description</h2> <p> Before any operation are done using the prelude library, the user first need to initialize it using the <a class="link" href="libprelude-prelude.html#prelude-init" title="prelude_init ()"><code class="function">prelude_init()</code></a> function. </p> <pre class="programlisting"> int ret; ret = prelude_init(&argc, argv); if ( ret < 0 ) { prelude_perror(ret, "unable to initialize the prelude library"); return -1; } </pre> <p> </p> </div> <div class="refsect1"> <a name="libprelude-prelude.details"></a><h2>Details</h2> <div class="refsect2"> <a name="LIBPRELUDE-VERSION:CAPS"></a><h3>LIBPRELUDE_VERSION</h3> <pre class="programlisting">#define LIBPRELUDE_VERSION "1.0.1" </pre> <p> </p> </div> <hr> <div class="refsect2"> <a name="prelude-init"></a><h3>prelude_init ()</h3> <pre class="programlisting"><span class="returnvalue">int</span> prelude_init (<em class="parameter"><code><span class="type">int</span> *argc</code></em>, <em class="parameter"><code><span class="type">char</span> **argv</code></em>);</pre> <p> Call this function before using any other Prelude functions in your applications. It will initialize everything needed to operate the library and parses some standard command line options. <em class="parameter"><code>argc</code></em> and <em class="parameter"><code>argv</code></em> are adjusted accordingly so your own code will never see those standard arguments. </p> <div class="variablelist"><table border="0" class="variablelist"> <colgroup> <col align="left" valign="top"> <col> </colgroup> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>argc</code></em> :</span></p></td> <td>Address of the argc parameter of your <code class="function">main()</code> function.</td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>argv</code></em> :</span></p></td> <td>Address of the argv parameter of your <code class="function">main()</code> function.</td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td>0 on success, a negative value if an error occured.</td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2"> <a name="prelude-deinit"></a><h3>prelude_deinit ()</h3> <pre class="programlisting"><span class="returnvalue">void</span> prelude_deinit (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> <p> Call this function if you're done using the library and want to free global shared ressource allocated by libprelude. </p> </div> <hr> <div class="refsect2"> <a name="prelude-check-version"></a><h3>prelude_check_version ()</h3> <pre class="programlisting">const <span class="returnvalue">char</span> * prelude_check_version (<em class="parameter"><code>const <span class="type">char</span> *req_version</code></em>);</pre> <p> If <em class="parameter"><code>req_version</code></em> is NULL this function will return the version of the library. Otherwise, <em class="parameter"><code>req_version</code></em> will be compared to the current library version. If the library version is higher or equal, this function will return the current library version. Otherwise, NULL is returned. </p> <div class="variablelist"><table border="0" class="variablelist"> <colgroup> <col align="left" valign="top"> <col> </colgroup> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>req_version</code></em> :</span></p></td> <td>The minimum acceptable version number.</td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td>The current library version, or NULL if <em class="parameter"><code>req_version</code></em> doesn't match.</td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2"> <a name="prelude-thread-init"></a><h3>prelude_thread_init ()</h3> <pre class="programlisting"><span class="returnvalue">int</span> prelude_thread_init (<em class="parameter"><code><span class="type">void</span> *future_use</code></em>);</pre> <p> </p> </div> <hr> <div class="refsect2"> <a name="prelude-fork-child"></a><h3>prelude_fork_child ()</h3> <pre class="programlisting"><span class="returnvalue">void</span> prelude_fork_child (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> <p> </p> </div> <hr> <div class="refsect2"> <a name="prelude-fork-parent"></a><h3>prelude_fork_parent ()</h3> <pre class="programlisting"><span class="returnvalue">void</span> prelude_fork_parent (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> <p> </p> </div> <hr> <div class="refsect2"> <a name="prelude-fork-prepare"></a><h3>prelude_fork_prepare ()</h3> <pre class="programlisting"><span class="returnvalue">void</span> prelude_fork_prepare (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> <p> </p> </div> </div> </div> <div class="footer"> <hr> Generated by GTK-Doc V1.19</div> </body> </html>