1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3 <title>Module class Reference</title>
4 <link href="doxygen.css" rel="stylesheet" type="text/css">
6 <!-- Generated by Doxygen 1.3-rc2 -->
8 <a class="qindex" href="main.html">Main Page</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="classes.html">Alphabetical List</a> <a class="qindex" href="annotated.html">Compound List</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Compound Members</a> <a class="qindex" href="globals.html">File Members</a> </center>
9 <hr><h1>Module Class Reference</h1>Base class for all InspIRCd modules This class is the base class for InspIRCd modules.
10 <a href="#_details">More...</a>
12 <code>#include <<a class="el" href="modules_8h-source.html">modules.h</a>></code>
14 <p>Inheritance diagram for Module:
15 <p><center><img src="classModule.png" usemap="#Module_map" border="0" alt=""></center>
16 <map name="Module_map">
17 <area href="classclassbase.html" alt="classbase" shape="rect" coords="0,0,68,24">
19 <a href="classModule-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
21 <tr><td colspan=2><br><h2>Public Methods</h2></td></tr>
22 <tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classModule.html#a0">Module</a> ()</td></tr>
23 <tr><td> </td><td><font size=-1><em>Default constructor creates a module class.</em> <a href="#a0"></a><em></em></font><br><br></td></tr>
24 <tr><td nowrap align=right valign=top>virtual </td><td valign=bottom><a class="el" href="classModule.html#a1">~Module</a> ()</td></tr>
25 <tr><td> </td><td><font size=-1><em>Default destructor destroys a module class.</em> <a href="#a1"></a><em></em></font><br><br></td></tr>
26 <tr><td nowrap align=right valign=top>virtual <a class="el" href="classVersion.html">Version</a> </td><td valign=bottom><a class="el" href="classModule.html#a2">GetVersion</a> ()</td></tr>
27 <tr><td> </td><td><font size=-1><em>Returns the version number of a Module.</em> <a href="#a2"></a><em></em></font><br><br></td></tr>
28 <tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="classModule.html#a3">OnUserConnect</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
29 <tr><td> </td><td><font size=-1><em>Called when a user connects.</em> <a href="#a3"></a><em></em></font><br><br></td></tr>
30 <tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="classModule.html#a4">OnUserQuit</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
31 <tr><td> </td><td><font size=-1><em>Called when a user quits.</em> <a href="#a4"></a><em></em></font><br><br></td></tr>
32 <tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="classModule.html#a5">OnUserJoin</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *channel)</td></tr>
33 <tr><td> </td><td><font size=-1><em>Called when a user joins a channel.</em> <a href="#a5"></a><em></em></font><br><br></td></tr>
34 <tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="classModule.html#a6">OnUserPart</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *channel)</td></tr>
35 <tr><td> </td><td><font size=-1><em>Called when a user parts a channel.</em> <a href="#a6"></a><em></em></font><br><br></td></tr>
36 <tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="classModule.html#a7">Module::OnPacketTransmit</a> (char *p)</td></tr>
37 <tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="classModule.html#a8">Module::OnPacketReceive</a> (char *p)</td></tr>
38 <tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="classModule.html#a9">OnRehash</a> ()</td></tr>
40 <hr><a name="_details"></a><h2>Detailed Description</h2>
41 Base class for all InspIRCd modules This class is the base class for InspIRCd modules.
43 All modules must inherit from this class, its methods will be called when irc server events occur. class inherited from module must be instantiated by the <a class="el" href="classModuleFactory.html">ModuleFactory</a> class (see relevent section) for the plugin to be initialised.
47 Definition at line <a class="el" href="modules_8h-source.html#l00065">65</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<hr><h2>Constructor & Destructor Documentation</h2>
48 <a name="a0" doxytag="Module::Module"></a><p>
49 <table width="100%" cellpadding="2" cellspacing="0" border="0">
52 <table cellpadding="0" cellspacing="0" border="0">
54 <td class="md" nowrap valign="top"> Module::Module </td>
55 <td class="md" valign="top">( </td>
56 <td class="mdname1" valign="top" nowrap> </td>
57 <td class="md" valign="top">) </td>
58 <td class="md" nowrap></td>
65 <table cellspacing=5 cellpadding=0 border=0>
73 Default constructor creates a module class.
77 Definition at line <a class="el" href="modules_8cpp-source.html#l00027">27</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
79 <div class="fragment"><pre>00027 { }
83 <a name="a1" doxytag="Module::~Module"></a><p>
84 <table width="100%" cellpadding="2" cellspacing="0" border="0">
87 <table cellpadding="0" cellspacing="0" border="0">
89 <td class="md" nowrap valign="top"> Module::~Module </td>
90 <td class="md" valign="top">( </td>
91 <td class="mdname1" valign="top" nowrap> </td>
92 <td class="md" valign="top">) </td>
93 <td class="md" nowrap><code> [virtual]</code></td>
100 <table cellspacing=5 cellpadding=0 border=0>
108 Default destructor destroys a module class.
112 Definition at line <a class="el" href="modules_8cpp-source.html#l00028">28</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
114 <div class="fragment"><pre>00028 { }
118 <hr><h2>Member Function Documentation</h2>
119 <a name="a2" doxytag="Module::GetVersion"></a><p>
120 <table width="100%" cellpadding="2" cellspacing="0" border="0">
123 <table cellpadding="0" cellspacing="0" border="0">
125 <td class="md" nowrap valign="top"> <a class="el" href="classVersion.html">Version</a> Module::GetVersion </td>
126 <td class="md" valign="top">( </td>
127 <td class="mdname1" valign="top" nowrap> </td>
128 <td class="md" valign="top">) </td>
129 <td class="md" nowrap><code> [virtual]</code></td>
136 <table cellspacing=5 cellpadding=0 border=0>
144 Returns the version number of a Module.
146 The method should return a <a class="el" href="classVersion.html">Version</a> object with its version information assigned via <a class="el" href="classVersion.html#a0">Version::Version</a>
148 Definition at line <a class="el" href="modules_8cpp-source.html#l00036">36</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
150 <div class="fragment"><pre>00036 { <span class="keywordflow">return</span> <a class="code" href="classVersion.html">Version</a>(1,0,0,0); }
154 <a name="a8" doxytag="Module::Module::OnPacketReceive"></a><p>
155 <table width="100%" cellpadding="2" cellspacing="0" border="0">
158 <table cellpadding="0" cellspacing="0" border="0">
160 <td class="md" nowrap valign="top"> virtual void Module::Module::OnPacketReceive </td>
161 <td class="md" valign="top">( </td>
162 <td class="md" nowrap valign="top">char * </td>
163 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
164 <td class="md" valign="top">) </td>
165 <td class="md" nowrap><code> [virtual]</code></td>
172 <table cellspacing=5 cellpadding=0 border=0>
183 <a name="a7" doxytag="Module::Module::OnPacketTransmit"></a><p>
184 <table width="100%" cellpadding="2" cellspacing="0" border="0">
187 <table cellpadding="0" cellspacing="0" border="0">
189 <td class="md" nowrap valign="top"> virtual void Module::Module::OnPacketTransmit </td>
190 <td class="md" valign="top">( </td>
191 <td class="md" nowrap valign="top">char * </td>
192 <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
193 <td class="md" valign="top">) </td>
194 <td class="md" nowrap><code> [virtual]</code></td>
201 <table cellspacing=5 cellpadding=0 border=0>
212 <a name="a9" doxytag="Module::OnRehash"></a><p>
213 <table width="100%" cellpadding="2" cellspacing="0" border="0">
216 <table cellpadding="0" cellspacing="0" border="0">
218 <td class="md" nowrap valign="top"> void Module::OnRehash </td>
219 <td class="md" valign="top">( </td>
220 <td class="mdname1" valign="top" nowrap> </td>
221 <td class="md" valign="top">) </td>
222 <td class="md" nowrap><code> [virtual]</code></td>
229 <table cellspacing=5 cellpadding=0 border=0>
239 Definition at line <a class="el" href="modules_8cpp-source.html#l00035">35</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
241 <div class="fragment"><pre>00035 { }
245 <a name="a3" doxytag="Module::OnUserConnect"></a><p>
246 <table width="100%" cellpadding="2" cellspacing="0" border="0">
249 <table cellpadding="0" cellspacing="0" border="0">
251 <td class="md" nowrap valign="top"> void Module::OnUserConnect </td>
252 <td class="md" valign="top">( </td>
253 <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a> * </td>
254 <td class="mdname1" valign="top" nowrap> <em>user</em> </td>
255 <td class="md" valign="top">) </td>
256 <td class="md" nowrap><code> [virtual]</code></td>
263 <table cellspacing=5 cellpadding=0 border=0>
271 Called when a user connects.
273 The details of the connecting user are available to you in the parameter userrec *user
275 Definition at line <a class="el" href="modules_8cpp-source.html#l00029">29</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
277 <div class="fragment"><pre>00029 { }
281 <a name="a5" doxytag="Module::OnUserJoin"></a><p>
282 <table width="100%" cellpadding="2" cellspacing="0" border="0">
285 <table cellpadding="0" cellspacing="0" border="0">
287 <td class="md" nowrap valign="top"> void Module::OnUserJoin </td>
288 <td class="md" valign="top">( </td>
289 <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a> * </td>
290 <td class="mdname" nowrap> <em>user</em>, </td>
295 <td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> * </td>
296 <td class="mdname" nowrap> <em>channel</em></td>
300 <td class="md">) </td>
301 <td class="md" colspan="2"><code> [virtual]</code></td>
308 <table cellspacing=5 cellpadding=0 border=0>
316 Called when a user joins a channel.
318 The details of the joining user are available to you in the parameter userrec *user, and the details of the channel they have joined is available in the variable chanrec *channel
320 Definition at line <a class="el" href="modules_8cpp-source.html#l00031">31</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
322 <div class="fragment"><pre>00031 { }
326 <a name="a6" doxytag="Module::OnUserPart"></a><p>
327 <table width="100%" cellpadding="2" cellspacing="0" border="0">
330 <table cellpadding="0" cellspacing="0" border="0">
332 <td class="md" nowrap valign="top"> void Module::OnUserPart </td>
333 <td class="md" valign="top">( </td>
334 <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a> * </td>
335 <td class="mdname" nowrap> <em>user</em>, </td>
340 <td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> * </td>
341 <td class="mdname" nowrap> <em>channel</em></td>
345 <td class="md">) </td>
346 <td class="md" colspan="2"><code> [virtual]</code></td>
353 <table cellspacing=5 cellpadding=0 border=0>
361 Called when a user parts a channel.
363 The details of the leaving user are available to you in the parameter userrec *user, and the details of the channel they have left is available in the variable chanrec *channel
365 Definition at line <a class="el" href="modules_8cpp-source.html#l00032">32</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
367 <div class="fragment"><pre>00032 { }
371 <a name="a4" doxytag="Module::OnUserQuit"></a><p>
372 <table width="100%" cellpadding="2" cellspacing="0" border="0">
375 <table cellpadding="0" cellspacing="0" border="0">
377 <td class="md" nowrap valign="top"> void Module::OnUserQuit </td>
378 <td class="md" valign="top">( </td>
379 <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a> * </td>
380 <td class="mdname1" valign="top" nowrap> <em>user</em> </td>
381 <td class="md" valign="top">) </td>
382 <td class="md" nowrap><code> [virtual]</code></td>
389 <table cellspacing=5 cellpadding=0 border=0>
397 Called when a user quits.
399 The details of the exiting user are available to you in the parameter userrec *user
401 Definition at line <a class="el" href="modules_8cpp-source.html#l00030">30</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
403 <div class="fragment"><pre>00030 { }
407 <hr>The documentation for this class was generated from the following files:<ul>
408 <li><a class="el" href="modules_8h-source.html">modules.h</a><li><a class="el" href="modules_8cpp-source.html">modules.cpp</a></ul>
409 <hr><address style="align: right;"><small>Generated on Sun Feb 9 12:48:18 2003 for InspIRCd by
410 <a href="http://www.doxygen.org/index.html">
411 <img src="doxygen.png" alt="doxygen" align="middle" border=0
412 width=110 height=53></a>1.3-rc2 </small></address>