1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>rlog: rlog::RLogModule Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.0 -->
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li id="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li><a href="pages.html"><span>Related Pages</span></a></li>
</ul></div>
<div class="tabs">
<ul>
<li><a href="annotated.html"><span>Class List</span></a></li>
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class Members</span></a></li>
</ul></div>
<div class="nav">
<b>rlog</b>::<a class="el" href="classrlog_1_1RLogModule.html">RLogModule</a></div>
<h1>rlog::RLogModule Class Reference</h1><!-- doxytag: class="rlog::RLogModule" -->Allows registration of external modules to rlog.
<a href="#_details">More...</a>
<p>
<code>#include <<a class="el" href="rloginit_8h-source.html">rlog/rloginit.h</a>></code>
<p>
<a href="classrlog_1_1RLogModule-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classrlog_1_1RLogModule.html#7b0259d172e448c93fdcabd9f370c692">init</a> (int &argv, char **argc)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="classrlog_1_1RLogModule.html#f205bf0beb2678e31108d54664297ca9">moduleName</a> () const=0</td></tr>
<tr><td colspan="2"><br><h2>Related Functions</h2></td></tr>
<tr><td colspan="2">(Note that these are not member functions.) <br><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classrlog_1_1RLogModule.html">RLogModule</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classrlog_1_1RLogModule.html#e59548fd01efa6bca52d41a1cd39361a">RegisterModule</a> (<a class="el" href="classrlog_1_1RLogModule.html">RLogModule</a> *module)</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Allows registration of external modules to rlog.
<p>
Currently this only allows for initialization callbacks. When RLogInit() is called, <a class="el" href="classrlog_1_1RLogModule.html#7b0259d172e448c93fdcabd9f370c692">init()</a> is called on all modules which have been registered.<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Valient Gough </dd></dl>
<p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="7b0259d172e448c93fdcabd9f370c692"></a><!-- doxytag: member="rlog::RLogModule::init" ref="7b0259d172e448c93fdcabd9f370c692" args="(int &argv, char **argc)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void RLogModule::init </td>
<td>(</td>
<td class="paramtype">int & </td>
<td class="paramname"> <em>argv</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char ** </td>
<td class="paramname"> <em>argc</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Called by RLogInit() to give the modules the command-line arguments
</div>
</div><p>
<a class="anchor" name="f205bf0beb2678e31108d54664297ca9"></a><!-- doxytag: member="rlog::RLogModule::moduleName" ref="f205bf0beb2678e31108d54664297ca9" args="() const=0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual const char* rlog::RLogModule::moduleName </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"> const<code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Must be implemented to return the name of the module.
</div>
</div><p>
<hr><h2>Friends And Related Function Documentation</h2>
<a class="anchor" name="e59548fd01efa6bca52d41a1cd39361a"></a><!-- doxytag: member="rlog::RLogModule::RegisterModule" ref="e59548fd01efa6bca52d41a1cd39361a" args="(RLogModule *module)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classrlog_1_1RLogModule.html">RLogModule</a> * RegisterModule </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classrlog_1_1RLogModule.html">RLogModule</a> * </td>
<td class="paramname"> <em>module</em> </td>
<td> ) </td>
<td width="100%"><code> [related]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Registers the module - which will have <a class="el" href="classrlog_1_1RLogModule.html#7b0259d172e448c93fdcabd9f370c692">init()</a> called when RLogInit is called. Returns the module so that it can be used easily as a static initializer. <div class="fragment"><pre class="fragment"> <span class="keyword">class </span>MyModule : <span class="keyword">public</span> rlog::RLogModule
{
<span class="keyword">public</span>:
<span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classrlog_1_1RLogModule.html#f205bf0beb2678e31108d54664297ca9">moduleName</a>()<span class="keyword"> const </span>{<span class="keywordflow">return</span> <span class="stringliteral">"MyModule"</span>;}
};
<span class="keyword">static</span> RLogModule * testModule = rlog::RegisterModule( <span class="keyword">new</span> MyModule() );
</pre></div>
</div>
</div><p>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="rloginit_8h-source.html">rloginit.h</a><li>rloginit.cpp</ul>
<hr size="1"><address style="align: right;"><small>Generated on Mon Nov 20 22:57:45 2006 for rlog by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
</body>
</html>
|