You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by bo...@apache.org on 2009/06/15 02:01:47 UTC
svn commit: r784636 [37/47] - in /apr/site/trunk/docs/docs: apr-util/trunk/
apr/trunk/
Added: apr/site/trunk/docs/docs/apr/trunk/group___a_p_r___util___f_i_f_o.html
URL: http://svn.apache.org/viewvc/apr/site/trunk/docs/docs/apr/trunk/group___a_p_r___util___f_i_f_o.html?rev=784636&view=auto
==============================================================================
--- apr/site/trunk/docs/docs/apr/trunk/group___a_p_r___util___f_i_f_o.html (added)
+++ apr/site/trunk/docs/docs/apr/trunk/group___a_p_r___util___f_i_f_o.html Mon Jun 15 00:01:38 2009
@@ -0,0 +1,177 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Apache Portable Runtime: Thread Safe FIFO bounded queue</title>
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.8 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <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="modules.html"><span>Modules</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="examples.html"><span>Examples</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>Thread Safe FIFO bounded queue<br>
+<small>
+[<a class="el" href="group___a_p_r___util.html">APR Utility Functions</a>]</small>
+</h1><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <a class="el" href="group___a_p_r___util___f_i_f_o.html#g8c74c22abf47b63555a2109b06f83abb">apr_queue_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___f_i_f_o.html#g8c74c22abf47b63555a2109b06f83abb">apr_queue_t</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___f_i_f_o.html#g800ac20c5c4e08fbf81a0faae86faa80">APU_DECLARE</a> (<a class="el" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>) apr_queue_create(<a class="el" href="group___a_p_r___util___f_i_f_o.html#g8c74c22abf47b63555a2109b06f83abb">apr_queue_t</a> **queue</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___f_i_f_o.html#g60727407a451e3eb4f7cc9939fc5b179">APU_DECLARE</a> (unsigned int) apr_queue_size(<a class="el" href="group___a_p_r___util___f_i_f_o.html#g8c74c22abf47b63555a2109b06f83abb">apr_queue_t</a> *queue)</td></tr>
+
+<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g6c5bb4d7cf58c4fb29851ac07e165e9f"></a><!-- doxytag: member="APR_Util_FIFO::queue_capacity" ref="g6c5bb4d7cf58c4fb29851ac07e165e9f" args="" -->
+unsigned int </td><td class="memItemRight" valign="bottom"><b>queue_capacity</b></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="geed3ca2b8c395737bb0893a0ea915f52"></a><!-- doxytag: member="APR_Util_FIFO::a" ref="geed3ca2b8c395737bb0893a0ea915f52" args="" -->
+unsigned int <a class="el" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> * </td><td class="memItemRight" valign="bottom"><b>a</b></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gf00cdd742d205932a8309628d39efd5e"></a><!-- doxytag: member="APR_Util_FIFO::data" ref="gf00cdd742d205932a8309628d39efd5e" args="" -->
+void * </td><td class="memItemRight" valign="bottom"><b>data</b></td></tr>
+
+</table>
+<hr><h2>Typedef Documentation</h2>
+<a class="anchor" name="g8c74c22abf47b63555a2109b06f83abb"></a><!-- doxytag: member="apr_queue.h::apr_queue_t" ref="g8c74c22abf47b63555a2109b06f83abb" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="group___a_p_r___util___f_i_f_o.html#g8c74c22abf47b63555a2109b06f83abb">apr_queue_t</a> <a class="el" href="group___a_p_r___util___f_i_f_o.html#g8c74c22abf47b63555a2109b06f83abb">apr_queue_t</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+opaque structure
+</div>
+</div><p>
+<hr><h2>Function Documentation</h2>
+<a class="anchor" name="g60727407a451e3eb4f7cc9939fc5b179"></a><!-- doxytag: member="apr_queue.h::APU_DECLARE" ref="g60727407a451e3eb4f7cc9939fc5b179" args="(unsigned int) apr_queue_size(apr_queue_t *queue)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">APU_DECLARE </td>
+ <td>(</td>
+ <td class="paramtype">unsigned </td>
+ <td class="paramname"> <em>int</em> </td>
+ <td> ) </td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+returns the size of the queue.<p>
+<dl class="warning" compact><dt><b>Warning:</b></dt><dd>this is not threadsafe, and is intended for reporting/monitoring of the queue. </dd></dl>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>queue</em> </td><td>the queue </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>the size of the queue </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="g800ac20c5c4e08fbf81a0faae86faa80"></a><!-- doxytag: member="apr_queue.h::APU_DECLARE" ref="g800ac20c5c4e08fbf81a0faae86faa80" args="(apr_status_t) apr_queue_create(apr_queue_t **queue" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">APU_DECLARE </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="group__apr__errno.html#gf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> </td>
+ <td class="paramname"> </td>
+ <td> ) </td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+create a FIFO queue <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>queue</em> </td><td>The new queue </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>queue_capacity</em> </td><td>maximum size of the queue </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>a</em> </td><td>pool to allocate queue from</td></tr>
+ </table>
+</dl>
+push/add an object to the queue, blocking if the queue is already full<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>queue</em> </td><td>the queue </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>the data </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_EINTR the blocking was interrupted (try again) <p>
+APR_EOF the queue has been terminated <p>
+APR_SUCCESS on a successful push</dd></dl>
+pop/get an object from the queue, blocking if the queue is already empty<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>queue</em> </td><td>the queue </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>the data </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_EINTR the blocking was interrupted (try again) <p>
+APR_EOF if the queue has been terminated <p>
+APR_SUCCESS on a successful pop</dd></dl>
+push/add an object to the queue, returning immediately if the queue is full<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>queue</em> </td><td>the queue </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>the data </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_EINTR the blocking operation was interrupted (try again) <p>
+APR_EAGAIN the queue is full <p>
+APR_EOF the queue has been terminated <p>
+APR_SUCCESS on a successful push</dd></dl>
+pop/get an object to the queue, returning immediately if the queue is empty<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>queue</em> </td><td>the queue </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>the data </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>APR_EINTR the blocking operation was interrupted (try again) <p>
+APR_EAGAIN the queue is empty <p>
+APR_EOF the queue has been terminated <p>
+APR_SUCCESS on a successful push</dd></dl>
+interrupt all the threads blocking on this queue.<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>queue</em> </td><td>the queue</td></tr>
+ </table>
+</dl>
+terminate the queue, sending an interrupt to all the blocking threads<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>queue</em> </td><td>the queue </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+</div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Mon Jun 15 09:45:30 2009 for Apache Portable Runtime by
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
+</body>
+</html>
Added: apr/site/trunk/docs/docs/apr/trunk/group___a_p_r___util___hook.html
URL: http://svn.apache.org/viewvc/apr/site/trunk/docs/docs/apr/trunk/group___a_p_r___util___hook.html?rev=784636&view=auto
==============================================================================
--- apr/site/trunk/docs/docs/apr/trunk/group___a_p_r___util___hook.html (added)
+++ apr/site/trunk/docs/docs/apr/trunk/group___a_p_r___util___hook.html Mon Jun 15 00:01:38 2009
@@ -0,0 +1,622 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Apache Portable Runtime: Hook Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.8 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <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="modules.html"><span>Modules</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="examples.html"><span>Examples</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>Hook Functions<br>
+<small>
+[<a class="el" href="group___a_p_r___util.html">APR Utility Functions</a>]</small>
+</h1><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Modules</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___o_p_t___h_o_o_k.html">Optional Hook Functions</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#g832a6d3b73a43b3f7c58c5702ddccce9">APR_IMPLEMENT_HOOK_GET_PROTO</a>(ns, link, name) link##_DECLARE(<a class="el" href="structapr__array__header__t.html">apr_array_header_t</a> *) ns##_hook_get_##name(void)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#g69298243d3c4ffb4627fd3d04b522f44">APR_DECLARE_EXTERNAL_HOOK</a>(ns, link, ret, name, args)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#ga936f5a0d1164d301aa157de6023fae5">APR_HOOK_STRUCT</a>(members) static struct { members } _hooks;</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#g5699f73166bae88b6f6ac0bf7618b0f6">APR_HOOK_LINK</a>(name) <a class="el" href="structapr__array__header__t.html">apr_array_header_t</a> *link_##name;</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#g2500abadaa54b3a9d6ec25ff33a6b0cc">APR_IMPLEMENT_EXTERNAL_HOOK_BASE</a>(ns, link, name)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#g2d11a43b6431ec568cc1647da4a2079c">APR_IMPLEMENT_EXTERNAL_HOOK_VOID</a>(ns, link, name, args_decl, args_use)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#gb466280bdabe0cc2ee5880cbb512fa3d">APR_IMPLEMENT_EXTERNAL_HOOK_RUN_ALL</a>(ns, link, ret, name, args_decl, args_use, ok, decline)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#g0420a2aa9ca6b3c1638bdb76025ecc57">APR_IMPLEMENT_EXTERNAL_HOOK_RUN_FIRST</a>(ns, link, ret, name, args_decl, args_use, decline)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#gb004dcbfff32997deb15040e48f07e92">APR_HOOK_REALLY_FIRST</a> (-10)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#g564dea4803813674cb6b742f65a3d2b2">APR_HOOK_FIRST</a> 0</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#gb9a5d50c3478c4d640deccec6b0ce879">APR_HOOK_MIDDLE</a> 10</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#ga610a95f03d7b4aee922c28b0919f028">APR_HOOK_LAST</a> 20</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#ge3c7d2cf35e8c89828dfff7a85b0ed77">APR_HOOK_REALLY_LAST</a> 30</td></tr>
+
+<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#gcf87dbe12a026276bca80232961576e6">APU_DECLARE</a> (void) apr_hook_sort_register(const char *szHookName</td></tr>
+
+<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">APU_DECLARE_DATA <a class="el" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#gbef8cf5f8a4528192b0aa66200b09ccc">apr_hook_global_pool</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">APU_DECLARE_DATA int </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#g26d9c49c3b7bd6717b7156c359d16f99">apr_hook_debug_enabled</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">APU_DECLARE_DATA const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___hook.html#g00ffe8fc20d32058fbdda6b3a4fe4fd3">apr_hook_debug_current</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g242711e58a02557bca364aa506746d8b"></a><!-- doxytag: member="APR_Util_Hook::aHooks" ref="g242711e58a02557bca364aa506746d8b" args="" -->
+<a class="el" href="structapr__array__header__t.html">apr_array_header_t</a> ** </td><td class="memItemRight" valign="bottom"><b>aHooks</b></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g8daee2cc4d5ba6e3b82b2f45cc2920a1"></a><!-- doxytag: member="APR_Util_Hook::aszPre" ref="g8daee2cc4d5ba6e3b82b2f45cc2920a1" args="" -->
+const char *const * </td><td class="memItemRight" valign="bottom"><b>aszPre</b></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g4dedfeea57daba4a4579d174e94e5afc"></a><!-- doxytag: member="APR_Util_Hook::aszSucc" ref="g4dedfeea57daba4a4579d174e94e5afc" args="" -->
+const char *const const char <br class="typebreak">
+*const * </td><td class="memItemRight" valign="bottom"><b>aszSucc</b></td></tr>
+
+</table>
+<hr><h2>Define Documentation</h2>
+<a class="anchor" name="g69298243d3c4ffb4627fd3d04b522f44"></a><!-- doxytag: member="apr_hooks.h::APR_DECLARE_EXTERNAL_HOOK" ref="g69298243d3c4ffb4627fd3d04b522f44" args="(ns, link, ret, name, args)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define APR_DECLARE_EXTERNAL_HOOK </td>
+ <td>(</td>
+ <td class="paramtype">ns, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">link, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ret, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">name, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">args </td>
+ <td class="paramname"> </td>
+ <td> ) </td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+<b>Value:</b><div class="fragment"><pre class="fragment"><span class="keyword">typedef</span> ret ns##_HOOK_##name##_t args; \
+link##_DECLARE(<span class="keywordtype">void</span>) ns<span class="preprocessor">##_hook_##name(ns##_HOOK_##name##_t *pf, \</span>
+<span class="preprocessor"> const char * const *aszPre, \</span>
+<span class="preprocessor"> const char * const *aszSucc, int nOrder); \</span>
+<span class="preprocessor">link##_DECLARE(ret) ns##_run_##name args; \</span>
+<span class="preprocessor">APR_IMPLEMENT_HOOK_GET_PROTO(ns,link,name); \</span>
+<span class="preprocessor">typedef struct ns##_LINK_##name##_t \</span>
+<span class="preprocessor"> { \</span>
+<span class="preprocessor"> ns##_HOOK_##name##_t *pFunc; \</span>
+<span class="preprocessor"> const char *szName; \</span>
+<span class="preprocessor"> const char * const *aszPredecessors; \</span>
+<span class="preprocessor"> const char * const *aszSuccessors; \</span>
+<span class="preprocessor"> int nOrder; \</span>
+<span class="preprocessor"> } ns##_LINK_##name##_t;</span>
+</pre></div>macro to declare the hook correctly
+</div>
+</div><p>
+<a class="anchor" name="g564dea4803813674cb6b742f65a3d2b2"></a><!-- doxytag: member="apr_hooks.h::APR_HOOK_FIRST" ref="g564dea4803813674cb6b742f65a3d2b2" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define APR_HOOK_FIRST 0 </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+run this hook first
+</div>
+</div><p>
+<a class="anchor" name="ga610a95f03d7b4aee922c28b0919f028"></a><!-- doxytag: member="apr_hooks.h::APR_HOOK_LAST" ref="ga610a95f03d7b4aee922c28b0919f028" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define APR_HOOK_LAST 20 </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+run this hook after every other hook which is defined
+</div>
+</div><p>
+<a class="anchor" name="g5699f73166bae88b6f6ac0bf7618b0f6"></a><!-- doxytag: member="apr_hooks.h::APR_HOOK_LINK" ref="g5699f73166bae88b6f6ac0bf7618b0f6" args="(name)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define APR_HOOK_LINK </td>
+ <td>(</td>
+ <td class="paramtype">name </td>
+ <td class="paramname"> </td>
+ <td> ) </td>
+ <td> <a class="el" href="structapr__array__header__t.html">apr_array_header_t</a> *link_##name;</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+macro to link the hook structure
+</div>
+</div><p>
+<a class="anchor" name="gb9a5d50c3478c4d640deccec6b0ce879"></a><!-- doxytag: member="apr_hooks.h::APR_HOOK_MIDDLE" ref="gb9a5d50c3478c4d640deccec6b0ce879" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define APR_HOOK_MIDDLE 10 </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+run this hook somewhere
+</div>
+</div><p>
+<a class="anchor" name="gb004dcbfff32997deb15040e48f07e92"></a><!-- doxytag: member="apr_hooks.h::APR_HOOK_REALLY_FIRST" ref="gb004dcbfff32997deb15040e48f07e92" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define APR_HOOK_REALLY_FIRST (-10) </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+run this hook first, before ANYTHING
+</div>
+</div><p>
+<a class="anchor" name="ge3c7d2cf35e8c89828dfff7a85b0ed77"></a><!-- doxytag: member="apr_hooks.h::APR_HOOK_REALLY_LAST" ref="ge3c7d2cf35e8c89828dfff7a85b0ed77" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define APR_HOOK_REALLY_LAST 30 </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+run this hook last, after EVERYTHING
+</div>
+</div><p>
+<a class="anchor" name="ga936f5a0d1164d301aa157de6023fae5"></a><!-- doxytag: member="apr_hooks.h::APR_HOOK_STRUCT" ref="ga936f5a0d1164d301aa157de6023fae5" args="(members)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define APR_HOOK_STRUCT </td>
+ <td>(</td>
+ <td class="paramtype">members </td>
+ <td class="paramname"> </td>
+ <td> ) </td>
+ <td> static struct { members } _hooks;</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+macro to declare the hook structure
+</div>
+</div><p>
+<a class="anchor" name="g2500abadaa54b3a9d6ec25ff33a6b0cc"></a><!-- doxytag: member="apr_hooks.h::APR_IMPLEMENT_EXTERNAL_HOOK_BASE" ref="g2500abadaa54b3a9d6ec25ff33a6b0cc" args="(ns, link, name)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define APR_IMPLEMENT_EXTERNAL_HOOK_BASE </td>
+ <td>(</td>
+ <td class="paramtype">ns, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">link, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">name </td>
+ <td class="paramname"> </td>
+ <td> ) </td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+<b>Value:</b><div class="fragment"><pre class="fragment">link##_DECLARE(<span class="keywordtype">void</span>) ns<span class="preprocessor">##_hook_##name(ns##_HOOK_##name##_t *pf,const char * const *aszPre, \</span>
+<span class="preprocessor"> const char * const *aszSucc,int nOrder) \</span>
+<span class="preprocessor"> { \</span>
+<span class="preprocessor"> ns##_LINK_##name##_t *pHook; \</span>
+<span class="preprocessor"> if(!_hooks.link_##name) \</span>
+<span class="preprocessor"> { \</span>
+<span class="preprocessor"> _hooks.link_##name=apr_array_make(apr_hook_global_pool,1,sizeof(ns##_LINK_##name##_t)); \</span>
+<span class="preprocessor"> apr_hook_sort_register(#name,&_hooks.link_##name); \</span>
+<span class="preprocessor"> } \</span>
+<span class="preprocessor"> pHook=apr_array_push(_hooks.link_##name); \</span>
+<span class="preprocessor"> pHook->pFunc=pf; \</span>
+<span class="preprocessor"> pHook->aszPredecessors=aszPre; \</span>
+<span class="preprocessor"> pHook->aszSuccessors=aszSucc; \</span>
+<span class="preprocessor"> pHook->nOrder=nOrder; \</span>
+<span class="preprocessor"> pHook->szName=apr_hook_debug_current; \</span>
+<span class="preprocessor"> if(apr_hook_debug_enabled) \</span>
+<span class="preprocessor"> apr_hook_debug_show(#name,aszPre,aszSucc); \</span>
+<span class="preprocessor"> } \</span>
+<span class="preprocessor"> APR_IMPLEMENT_HOOK_GET_PROTO(ns,link,name) \</span>
+<span class="preprocessor"> { \</span>
+<span class="preprocessor"> return _hooks.link_##name; \</span>
+<span class="preprocessor"> }</span>
+</pre></div>macro to implement the hook
+</div>
+</div><p>
+<a class="anchor" name="gb466280bdabe0cc2ee5880cbb512fa3d"></a><!-- doxytag: member="apr_hooks.h::APR_IMPLEMENT_EXTERNAL_HOOK_RUN_ALL" ref="gb466280bdabe0cc2ee5880cbb512fa3d" args="(ns, link, ret, name, args_decl, args_use, ok, decline)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define APR_IMPLEMENT_EXTERNAL_HOOK_RUN_ALL </td>
+ <td>(</td>
+ <td class="paramtype">ns, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">link, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ret, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">name, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">args_decl, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">args_use, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ok, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">decline </td>
+ <td class="paramname"> </td>
+ <td> ) </td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="group___a_p_r___util___hook.html#g2500abadaa54b3a9d6ec25ff33a6b0cc">APR_IMPLEMENT_EXTERNAL_HOOK_BASE</a>(ns,link,name) \
+link##_DECLARE(ret) ns<span class="preprocessor">##_run_##name args_decl \</span>
+<span class="preprocessor"> { \</span>
+<span class="preprocessor"> ns##_LINK_##name##_t *pHook; \</span>
+<span class="preprocessor"> int n; \</span>
+<span class="preprocessor"> ret rv = ok; \</span>
+<span class="preprocessor">\</span>
+<span class="preprocessor"> OLD_DTRACE_PROBE(name##__entry); \</span>
+<span class="preprocessor">\</span>
+<span class="preprocessor"> if(_hooks.link_##name) \</span>
+<span class="preprocessor"> { \</span>
+<span class="preprocessor"> pHook=(ns##_LINK_##name##_t *)_hooks.link_##name->elts; \</span>
+<span class="preprocessor"> for(n=0 ; n < _hooks.link_##name->nelts ; ++n) \</span>
+<span class="preprocessor"> { \</span>
+<span class="preprocessor"> OLD_DTRACE_PROBE1(name##__dispatch__invoke, (char *)pHook[n].szName); \</span>
+<span class="preprocessor"> rv=pHook[n].pFunc args_use; \</span>
+<span class="preprocessor"> OLD_DTRACE_PROBE2(name##__dispatch__complete, (char *)pHook[n].szName, rv); \</span>
+<span class="preprocessor"> if(rv != ok && rv != decline) \</span>
+<span class="preprocessor"> break; \</span>
+<span class="preprocessor"> rv = ok; \</span>
+<span class="preprocessor"> } \</span>
+<span class="preprocessor"> } \</span>
+<span class="preprocessor">\</span>
+<span class="preprocessor"> OLD_DTRACE_PROBE1(name##__return, rv); \</span>
+<span class="preprocessor">\</span>
+<span class="preprocessor"> return rv; \</span>
+<span class="preprocessor"> }</span>
+</pre></div>Implement a hook that runs until one of the functions returns something other than OK or DECLINE <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>ns</em> </td><td>The namespace prefix of the hook functions </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>link</em> </td><td>The linkage declaration prefix of the hook </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>ret</em> </td><td>Type to return </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>The name of the hook </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>args_decl</em> </td><td>The declaration of the arguments for the hook </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>args_use</em> </td><td>The names for the arguments for the hook </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>ok</em> </td><td>Success value </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>decline</em> </td><td>Decline value </td></tr>
+ </table>
+</dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>The link prefix FOO corresponds to FOO_DECLARE() macros, which provide export linkage from the module that IMPLEMENTs the hook, and import linkage from external modules that link to the hook's module. </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="g0420a2aa9ca6b3c1638bdb76025ecc57"></a><!-- doxytag: member="apr_hooks.h::APR_IMPLEMENT_EXTERNAL_HOOK_RUN_FIRST" ref="g0420a2aa9ca6b3c1638bdb76025ecc57" args="(ns, link, ret, name, args_decl, args_use, decline)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define APR_IMPLEMENT_EXTERNAL_HOOK_RUN_FIRST </td>
+ <td>(</td>
+ <td class="paramtype">ns, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">link, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ret, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">name, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">args_decl, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">args_use, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">decline </td>
+ <td class="paramname"> </td>
+ <td> ) </td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="group___a_p_r___util___hook.html#g2500abadaa54b3a9d6ec25ff33a6b0cc">APR_IMPLEMENT_EXTERNAL_HOOK_BASE</a>(ns,link,name) \
+link##_DECLARE(ret) ns<span class="preprocessor">##_run_##name args_decl \</span>
+<span class="preprocessor"> { \</span>
+<span class="preprocessor"> ns##_LINK_##name##_t *pHook; \</span>
+<span class="preprocessor"> int n; \</span>
+<span class="preprocessor"> ret rv = decline; \</span>
+<span class="preprocessor">\</span>
+<span class="preprocessor"> OLD_DTRACE_PROBE(name##__entry); \</span>
+<span class="preprocessor">\</span>
+<span class="preprocessor"> if(_hooks.link_##name) \</span>
+<span class="preprocessor"> { \</span>
+<span class="preprocessor"> pHook=(ns##_LINK_##name##_t *)_hooks.link_##name->elts; \</span>
+<span class="preprocessor"> for(n=0 ; n < _hooks.link_##name->nelts ; ++n) \</span>
+<span class="preprocessor"> { \</span>
+<span class="preprocessor"> OLD_DTRACE_PROBE1(name##__dispatch__invoke, (char *)pHook[n].szName); \</span>
+<span class="preprocessor"> rv=pHook[n].pFunc args_use; \</span>
+<span class="preprocessor"> OLD_DTRACE_PROBE2(name##__dispatch__complete, (char *)pHook[n].szName, rv); \</span>
+<span class="preprocessor">\</span>
+<span class="preprocessor"> if(rv != decline) \</span>
+<span class="preprocessor"> break; \</span>
+<span class="preprocessor"> } \</span>
+<span class="preprocessor"> } \</span>
+<span class="preprocessor">\</span>
+<span class="preprocessor"> OLD_DTRACE_PROBE1(name##__return, rv); \</span>
+<span class="preprocessor">\</span>
+<span class="preprocessor"> return rv; \</span>
+<span class="preprocessor"> }</span>
+</pre></div>Implement a hook that runs until the first function returns something other than the value of decline <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>ns</em> </td><td>The namespace prefix of the hook functions </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>link</em> </td><td>The linkage declaration prefix of the hook </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>The name of the hook </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>ret</em> </td><td>Type to return </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>args_decl</em> </td><td>The declaration of the arguments for the hook </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>args_use</em> </td><td>The names for the arguments for the hook </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>decline</em> </td><td>Decline value </td></tr>
+ </table>
+</dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>The link prefix FOO corresponds to FOO_DECLARE() macros, which provide export linkage from the module that IMPLEMENTs the hook, and import linkage from external modules that link to the hook's module. </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="g2d11a43b6431ec568cc1647da4a2079c"></a><!-- doxytag: member="apr_hooks.h::APR_IMPLEMENT_EXTERNAL_HOOK_VOID" ref="g2d11a43b6431ec568cc1647da4a2079c" args="(ns, link, name, args_decl, args_use)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define APR_IMPLEMENT_EXTERNAL_HOOK_VOID </td>
+ <td>(</td>
+ <td class="paramtype">ns, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">link, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">name, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">args_decl, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">args_use </td>
+ <td class="paramname"> </td>
+ <td> ) </td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="group___a_p_r___util___hook.html#g2500abadaa54b3a9d6ec25ff33a6b0cc">APR_IMPLEMENT_EXTERNAL_HOOK_BASE</a>(ns,link,name) \
+link##_DECLARE(<span class="keywordtype">void</span>) ns<span class="preprocessor">##_run_##name args_decl \</span>
+<span class="preprocessor"> { \</span>
+<span class="preprocessor"> ns##_LINK_##name##_t *pHook; \</span>
+<span class="preprocessor"> int n; \</span>
+<span class="preprocessor">\</span>
+<span class="preprocessor"> OLD_DTRACE_PROBE(name##__entry); \</span>
+<span class="preprocessor">\</span>
+<span class="preprocessor"> if(_hooks.link_##name) \</span>
+<span class="preprocessor"> { \</span>
+<span class="preprocessor"> pHook=(ns##_LINK_##name##_t *)_hooks.link_##name->elts; \</span>
+<span class="preprocessor"> for(n=0 ; n < _hooks.link_##name->nelts ; ++n) \</span>
+<span class="preprocessor"> { \</span>
+<span class="preprocessor"> OLD_DTRACE_PROBE1(name##__dispatch__invoke, (char *)pHook[n].szName); \</span>
+<span class="preprocessor"> pHook[n].pFunc args_use; \</span>
+<span class="preprocessor"> OLD_DTRACE_PROBE2(name##__dispatch__complete, (char *)pHook[n].szName, 0); \</span>
+<span class="preprocessor"> } \</span>
+<span class="preprocessor"> } \</span>
+<span class="preprocessor">\</span>
+<span class="preprocessor"> OLD_DTRACE_PROBE1(name##__return, 0); \</span>
+<span class="preprocessor">\</span>
+<span class="preprocessor"> }</span>
+</pre></div>Implement a hook that has no return code, and therefore runs all of the registered functions <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>ns</em> </td><td>The namespace prefix of the hook functions </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>link</em> </td><td>The linkage declaration prefix of the hook </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>The name of the hook </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>args_decl</em> </td><td>The declaration of the arguments for the hook </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>args_use</em> </td><td>The names for the arguments for the hook </td></tr>
+ </table>
+</dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>The link prefix FOO corresponds to FOO_DECLARE() macros, which provide export linkage from the module that IMPLEMENTs the hook, and import linkage from external modules that link to the hook's module. </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="g832a6d3b73a43b3f7c58c5702ddccce9"></a><!-- doxytag: member="apr_hooks.h::APR_IMPLEMENT_HOOK_GET_PROTO" ref="g832a6d3b73a43b3f7c58c5702ddccce9" args="(ns, link, name)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define APR_IMPLEMENT_HOOK_GET_PROTO </td>
+ <td>(</td>
+ <td class="paramtype">ns, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">link, <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">name </td>
+ <td class="paramname"> </td>
+ <td> ) </td>
+ <td> link##_DECLARE(<a class="el" href="structapr__array__header__t.html">apr_array_header_t</a> *) ns##_hook_get_##name(void)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+macro to return the prototype of the hook function
+</div>
+</div><p>
+<hr><h2>Function Documentation</h2>
+<a class="anchor" name="gcf87dbe12a026276bca80232961576e6"></a><!-- doxytag: member="apr_hooks.h::APU_DECLARE" ref="gcf87dbe12a026276bca80232961576e6" args="(void) apr_hook_sort_register(const char *szHookName" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">APU_DECLARE </td>
+ <td>(</td>
+ <td class="paramtype">void </td>
+ <td class="paramname"> </td>
+ <td> ) </td>
+ <td> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Register a hook function to be sorted <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>szHookName</em> </td><td>The name of the Hook the function is registered for </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>aHooks</em> </td><td>The array which stores all of the functions for this hook</td></tr>
+ </table>
+</dl>
+Sort all of the registerd functions for a given hook<p>
+Print all of the information about the current hook. This is used for debugging purposes. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>szName</em> </td><td>The name of the hook </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>aszPre</em> </td><td>All of the functions in the predecessor array </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>aszSucc</em> </td><td>All of the functions in the successor array</td></tr>
+ </table>
+</dl>
+Remove all currently registered functions.
+</div>
+</div><p>
+<hr><h2>Variable Documentation</h2>
+<a class="anchor" name="g00ffe8fc20d32058fbdda6b3a4fe4fd3"></a><!-- doxytag: member="apr_hooks.h::apr_hook_debug_current" ref="g00ffe8fc20d32058fbdda6b3a4fe4fd3" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">APU_DECLARE_DATA const char* <a class="el" href="group___a_p_r___util___hook.html#g00ffe8fc20d32058fbdda6b3a4fe4fd3">apr_hook_debug_current</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The name of the module that is currently registering a function
+</div>
+</div><p>
+<a class="anchor" name="g26d9c49c3b7bd6717b7156c359d16f99"></a><!-- doxytag: member="apr_hooks.h::apr_hook_debug_enabled" ref="g26d9c49c3b7bd6717b7156c359d16f99" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">APU_DECLARE_DATA int <a class="el" href="group___a_p_r___util___hook.html#g26d9c49c3b7bd6717b7156c359d16f99">apr_hook_debug_enabled</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+A global variable to determine if debugging information about the hooks functions should be printed
+</div>
+</div><p>
+<a class="anchor" name="gbef8cf5f8a4528192b0aa66200b09ccc"></a><!-- doxytag: member="apr_hooks.h::apr_hook_global_pool" ref="gbef8cf5f8a4528192b0aa66200b09ccc" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">APU_DECLARE_DATA <a class="el" href="group__apr__pools.html#gf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a>* <a class="el" href="group___a_p_r___util___hook.html#gbef8cf5f8a4528192b0aa66200b09ccc">apr_hook_global_pool</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The global pool used to allocate any memory needed by the hooks.
+</div>
+</div><p>
+</div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Mon Jun 15 09:45:30 2009 for Apache Portable Runtime by
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
+</body>
+</html>
Added: apr/site/trunk/docs/docs/apr/trunk/group___a_p_r___util___l_d_a_p.html
URL: http://svn.apache.org/viewvc/apr/site/trunk/docs/docs/apr/trunk/group___a_p_r___util___l_d_a_p.html?rev=784636&view=auto
==============================================================================
--- apr/site/trunk/docs/docs/apr/trunk/group___a_p_r___util___l_d_a_p.html (added)
+++ apr/site/trunk/docs/docs/apr/trunk/group___a_p_r___util___l_d_a_p.html Mon Jun 15 00:01:38 2009
@@ -0,0 +1,64 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Apache Portable Runtime: LDAP</title>
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.8 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <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="modules.html"><span>Modules</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="examples.html"><span>Examples</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>LDAP<br>
+<small>
+[<a class="el" href="group___a_p_r___util.html">APR Utility Functions</a>]</small>
+</h1><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gf8d199208a26c4ee4c6db46764675f01"></a><!-- doxytag: member="APR_Util_LDAP::APR_HAS_LDAP" ref="gf8d199208a26c4ee4c6db46764675f01" args="" -->
+#define </td><td class="memItemRight" valign="bottom"><b>APR_HAS_LDAP</b> 0</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g5ee3703cda47ea3fa8bb82b94341742c"></a><!-- doxytag: member="APR_Util_LDAP::APR_HAS_NETSCAPE_LDAPSDK" ref="g5ee3703cda47ea3fa8bb82b94341742c" args="" -->
+#define </td><td class="memItemRight" valign="bottom"><b>APR_HAS_NETSCAPE_LDAPSDK</b> 0</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gdfd79510be01b585d07d3a0cf517377a"></a><!-- doxytag: member="APR_Util_LDAP::APR_HAS_SOLARIS_LDAPSDK" ref="gdfd79510be01b585d07d3a0cf517377a" args="" -->
+#define </td><td class="memItemRight" valign="bottom"><b>APR_HAS_SOLARIS_LDAPSDK</b> 0</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g61438dcd7b6c386fab3b3da59c884f2c"></a><!-- doxytag: member="APR_Util_LDAP::APR_HAS_NOVELL_LDAPSDK" ref="g61438dcd7b6c386fab3b3da59c884f2c" args="" -->
+#define </td><td class="memItemRight" valign="bottom"><b>APR_HAS_NOVELL_LDAPSDK</b> 0</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g6e9f26af3e9801f4f3dfb6ccb51ab4fe"></a><!-- doxytag: member="APR_Util_LDAP::APR_HAS_MOZILLA_LDAPSDK" ref="g6e9f26af3e9801f4f3dfb6ccb51ab4fe" args="" -->
+#define </td><td class="memItemRight" valign="bottom"><b>APR_HAS_MOZILLA_LDAPSDK</b> 0</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g53eb8a677574757eab3aeef411c79e82"></a><!-- doxytag: member="APR_Util_LDAP::APR_HAS_OPENLDAP_LDAPSDK" ref="g53eb8a677574757eab3aeef411c79e82" args="" -->
+#define </td><td class="memItemRight" valign="bottom"><b>APR_HAS_OPENLDAP_LDAPSDK</b> 0</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g4d353111e4fc3f79a7a9a4d9a37b4099"></a><!-- doxytag: member="APR_Util_LDAP::APR_HAS_MICROSOFT_LDAPSDK" ref="g4d353111e4fc3f79a7a9a4d9a37b4099" args="" -->
+#define </td><td class="memItemRight" valign="bottom"><b>APR_HAS_MICROSOFT_LDAPSDK</b> 0</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gd46b9586b73ac6e51a02831275f8b04e"></a><!-- doxytag: member="APR_Util_LDAP::APR_HAS_TIVOLI_LDAPSDK" ref="gd46b9586b73ac6e51a02831275f8b04e" args="" -->
+#define </td><td class="memItemRight" valign="bottom"><b>APR_HAS_TIVOLI_LDAPSDK</b> 0</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gaf7c4fb35087815ead3905b61df10791"></a><!-- doxytag: member="APR_Util_LDAP::APR_HAS_ZOS_LDAPSDK" ref="gaf7c4fb35087815ead3905b61df10791" args="" -->
+#define </td><td class="memItemRight" valign="bottom"><b>APR_HAS_ZOS_LDAPSDK</b> 0</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g23badc30790c00670f7d32485aef644f"></a><!-- doxytag: member="APR_Util_LDAP::APR_HAS_OTHER_LDAPSDK" ref="g23badc30790c00670f7d32485aef644f" args="" -->
+#define </td><td class="memItemRight" valign="bottom"><b>APR_HAS_OTHER_LDAPSDK</b> 0</td></tr>
+
+</table>
+</div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Mon Jun 15 09:45:30 2009 for Apache Portable Runtime by
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
+</body>
+</html>