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>modules.h File Reference</title>
4 <link href="inspircd.css" rel="stylesheet" type="text/css">
6 <!-- Generated by Doxygen 1.3-rc3 -->
8 <a class="qindex" href="main.html">Main Page</a> <a class="qindex" href="namespaces.html">Namespace List</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>modules.h File Reference</h1><code>#include "dynamic.h"</code><br>
10 <code>#include "<a class="el" href="base_8h-source.html">base.h</a>"</code><br>
11 <code>#include "<a class="el" href="ctables_8h-source.html">ctables.h</a>"</code><br>
12 <code>#include <string></code><br>
13 <code>#include <deque></code><br>
14 <code>#include <sstream></code><br>
17 Include dependency graph for modules.h:<p><center><img src="modules_8h__incl.gif" border="0" usemap="#modules.h_map" alt="Include dependency graph"></center>
18 <map name="modules.h_map">
19 <area href="base_8h.html" shape="rect" coords="91,86,139,107" alt="">
20 <area href="ctables_8h.html" shape="rect" coords="151,155,212,176" alt="">
24 This graph shows which files directly or indirectly include this file:<p><center><img src="modules_8h__dep__incl.gif" border="0" usemap="#modules.hdep_map" alt="Included by dependency graph"></center>
25 <map name="modules.hdep_map">
26 <area href="modules_8cpp.html" shape="rect" coords="7,16,89,37" alt="">
30 <a href="modules_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
32 <tr><td colspan=2><br><h2>Compounds</h2></td></tr>
33 <tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="classAdmin.html">Admin</a></td></tr>
34 <tr><td> </td><td><font size=-1><em>Holds /ADMIN data This class contains the admin details of the local server.</em> <a href="classAdmin.html#_details">More...</a><em></em></font><br><br></td></tr>
35 <tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="classConfigReader.html">ConfigReader</a></td></tr>
36 <tr><td> </td><td><font size=-1><em>Allows reading of values from configuration files This class allows a module to read from either the main configuration file (inspircd.conf) or from a module-specified configuration file.</em> <a href="classConfigReader.html#_details">More...</a><em></em></font><br><br></td></tr>
37 <tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="classFileReader.html">FileReader</a></td></tr>
38 <tr><td> </td><td><font size=-1><em>Caches a text file into memory and can be used to retrieve lines from it.</em> <a href="classFileReader.html#_details">More...</a><em></em></font><br><br></td></tr>
39 <tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="classModule.html">Module</a></td></tr>
40 <tr><td> </td><td><font size=-1><em>Base class for all InspIRCd modules This class is the base class for InspIRCd modules.</em> <a href="classModule.html#_details">More...</a><em></em></font><br><br></td></tr>
41 <tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="classModuleFactory.html">ModuleFactory</a></td></tr>
42 <tr><td> </td><td><font size=-1><em>Instantiates classes inherited from <a class="el" href="classModule.html">Module</a> This class creates a class inherited from type <a class="el" href="classModule.html">Module</a>, using new.</em> <a href="classModuleFactory.html#_details">More...</a><em></em></font><br><br></td></tr>
43 <tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="classServer.html">Server</a></td></tr>
44 <tr><td> </td><td><font size=-1><em>Allows server output and query functions This class contains methods which allow a module to query the state of the irc server, and produce output to users and other servers.</em> <a href="classServer.html#_details">More...</a><em></em></font><br><br></td></tr>
45 <tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="classVersion.html">Version</a></td></tr>
46 <tr><td> </td><td><font size=-1><em>Holds a module's Version information The four members (set by the constructor only) indicate details as to the version number of a module.</em> <a href="classVersion.html#_details">More...</a><em></em></font><br><br></td></tr>
47 <tr><td colspan=2><br><h2>Defines</h2></td></tr>
48 <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="modules_8h.html#a0">DEBUG</a> 10</td></tr>
49 <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="modules_8h.html#a1">VERBOSE</a> 20</td></tr>
50 <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="modules_8h.html#a2">DEFAULT</a> 30</td></tr>
51 <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="modules_8h.html#a3">SPARSE</a> 40</td></tr>
52 <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="modules_8h.html#a4">NONE</a> 50</td></tr>
53 <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="modules_8h.html#a5">MT_CHANNEL</a> 1</td></tr>
54 <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="modules_8h.html#a6">MT_CLIENT</a> 2</td></tr>
55 <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="modules_8h.html#a7">MT_SERVER</a> 3</td></tr>
56 <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="modules_8h.html#a8">FOREACH_MOD</a> for (int i = 0; i <= <a class="el" href="modules_8cpp.html#a3">MODCOUNT</a>; i++) modules[i]-></td></tr>
57 <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="modules_8h.html#a9">FOREACH_RESULT</a>(x)</td></tr>
58 <tr><td colspan=2><br><h2>Typedefs</h2></td></tr>
59 <tr><td nowrap align=right valign=top>typedef std::deque< std::string > </td><td valign=bottom><a class="el" href="modules_8h.html#a10">file_cache</a></td></tr>
60 <tr><td> </td><td><font size=-1><em>Low level definition of a <a class="el" href="classFileReader.html">FileReader</a> classes file cache area.</em> <a href="#a10"></a><em></em></font><br><br></td></tr>
61 <tr><td nowrap align=right valign=top>typedef <a class="el" href="modules_8h.html#a10">file_cache</a> </td><td valign=bottom><a class="el" href="modules_8h.html#a11">string_list</a></td></tr>
62 <tr><td nowrap align=right valign=top>typedef DLLFactory< <a class="el" href="classModuleFactory.html">ModuleFactory</a> > </td><td valign=bottom><a class="el" href="modules_8h.html#a12">ircd_module</a></td></tr>
63 <tr><td colspan=2><br><h2>Functions</h2></td></tr>
64 <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="modules_8h.html#a13">createcommand</a> (char *cmd, handlerfunc f, char flags, int minparams)</td></tr>
65 <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="modules_8h.html#a14">server_mode</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
67 <hr><h2>Define Documentation</h2>
68 <a name="a0" doxytag="modules.h::DEBUG"></a><p>
69 <table width="100%" cellpadding="2" cellspacing="0" border="0">
72 <table cellpadding="0" cellspacing="0" border="0">
74 <td class="md" nowrap valign="top"> #define DEBUG 10
79 <table cellspacing=5 cellpadding=0 border=0>
89 Definition at line <a class="el" href="modules_8h-source.html#l00011">11</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
92 <a name="a2" doxytag="modules.h::DEFAULT"></a><p>
93 <table width="100%" cellpadding="2" cellspacing="0" border="0">
96 <table cellpadding="0" cellspacing="0" border="0">
98 <td class="md" nowrap valign="top"> #define DEFAULT 30
103 <table cellspacing=5 cellpadding=0 border=0>
113 Definition at line <a class="el" href="modules_8h-source.html#l00013">13</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
116 <a name="a8" doxytag="modules.h::FOREACH_MOD"></a><p>
117 <table width="100%" cellpadding="2" cellspacing="0" border="0">
120 <table cellpadding="0" cellspacing="0" border="0">
122 <td class="md" nowrap valign="top"> #define FOREACH_MOD for (int i = 0; i <= <a class="el" href="modules_8cpp.html#a3">MODCOUNT</a>; i++) modules[i]->
127 <table cellspacing=5 cellpadding=0 border=0>
137 Definition at line <a class="el" href="modules_8h-source.html#l00038">38</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
140 <a name="a9" doxytag="modules.h::FOREACH_RESULT"></a><p>
141 <table width="100%" cellpadding="2" cellspacing="0" border="0">
144 <table cellpadding="0" cellspacing="0" border="0">
146 <td class="md" nowrap valign="top"> #define FOREACH_RESULT</td>
147 <td class="md" valign="top">( </td>
148 <td class="md" nowrap valign="top">x </td>
149 <td class="mdname1" valign="top" nowrap> </td>
150 <td class="md" valign="top">) </td>
151 <td class="md" nowrap>
156 <table cellspacing=5 cellpadding=0 border=0>
164 <b>Value:</b><div class="fragment"><pre>{ MOD_RESULT = 0; \
165 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i <= <a class="code" href="modules_8cpp.html#a3">MODCOUNT</a>; i++) { \
166 <span class="keywordtype">int</span> res = <a class="code" href="modules_8cpp.html#a9">modules</a>[i]->x ; \
167 <span class="keywordflow">if</span> (res) { \
169 <span class="keywordflow">break</span>; \
175 Definition at line <a class="el" href="modules_8h-source.html#l00046">46</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
178 <a name="a5" doxytag="modules.h::MT_CHANNEL"></a><p>
179 <table width="100%" cellpadding="2" cellspacing="0" border="0">
182 <table cellpadding="0" cellspacing="0" border="0">
184 <td class="md" nowrap valign="top"> #define MT_CHANNEL 1
189 <table cellspacing=5 cellpadding=0 border=0>
199 Definition at line <a class="el" href="modules_8h-source.html#l00017">17</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
202 <a name="a6" doxytag="modules.h::MT_CLIENT"></a><p>
203 <table width="100%" cellpadding="2" cellspacing="0" border="0">
206 <table cellpadding="0" cellspacing="0" border="0">
208 <td class="md" nowrap valign="top"> #define MT_CLIENT 2
213 <table cellspacing=5 cellpadding=0 border=0>
223 Definition at line <a class="el" href="modules_8h-source.html#l00018">18</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
225 Referenced by <a class="el" href="modules_8cpp-source.html#l00310">Server::AddExtendedMode()</a>. </td>
228 <a name="a7" doxytag="modules.h::MT_SERVER"></a><p>
229 <table width="100%" cellpadding="2" cellspacing="0" border="0">
232 <table cellpadding="0" cellspacing="0" border="0">
234 <td class="md" nowrap valign="top"> #define MT_SERVER 3
239 <table cellspacing=5 cellpadding=0 border=0>
249 Definition at line <a class="el" href="modules_8h-source.html#l00019">19</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
251 Referenced by <a class="el" href="modules_8cpp-source.html#l00310">Server::AddExtendedMode()</a>. </td>
254 <a name="a4" doxytag="modules.h::NONE"></a><p>
255 <table width="100%" cellpadding="2" cellspacing="0" border="0">
258 <table cellpadding="0" cellspacing="0" border="0">
260 <td class="md" nowrap valign="top"> #define NONE 50
265 <table cellspacing=5 cellpadding=0 border=0>
275 Definition at line <a class="el" href="modules_8h-source.html#l00015">15</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
278 <a name="a3" doxytag="modules.h::SPARSE"></a><p>
279 <table width="100%" cellpadding="2" cellspacing="0" border="0">
282 <table cellpadding="0" cellspacing="0" border="0">
284 <td class="md" nowrap valign="top"> #define SPARSE 40
289 <table cellspacing=5 cellpadding=0 border=0>
299 Definition at line <a class="el" href="modules_8h-source.html#l00014">14</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
302 <a name="a1" doxytag="modules.h::VERBOSE"></a><p>
303 <table width="100%" cellpadding="2" cellspacing="0" border="0">
306 <table cellpadding="0" cellspacing="0" border="0">
308 <td class="md" nowrap valign="top"> #define VERBOSE 20
313 <table cellspacing=5 cellpadding=0 border=0>
323 Definition at line <a class="el" href="modules_8h-source.html#l00012">12</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
326 <hr><h2>Typedef Documentation</h2>
327 <a name="a10" doxytag="modules.h::file_cache"></a><p>
328 <table width="100%" cellpadding="2" cellspacing="0" border="0">
331 <table cellpadding="0" cellspacing="0" border="0">
333 <td class="md" nowrap valign="top"> typedef std::deque<std::string> file_cache
338 <table cellspacing=5 cellpadding=0 border=0>
346 Low level definition of a <a class="el" href="classFileReader.html">FileReader</a> classes file cache area.
350 Definition at line <a class="el" href="modules_8h-source.html#l00030">30</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
352 Referenced by <a class="el" href="modules_8cpp-source.html#l00380">FileReader::FileReader()</a>, and <a class="el" href="modules_8cpp-source.html#l00391">FileReader::LoadFile()</a>. </td>
355 <a name="a12" doxytag="modules.h::ircd_module"></a><p>
356 <table width="100%" cellpadding="2" cellspacing="0" border="0">
359 <table cellpadding="0" cellspacing="0" border="0">
361 <td class="md" nowrap valign="top"> typedef DLLFactory<<a class="el" href="classModuleFactory.html">ModuleFactory</a>> ircd_module
366 <table cellspacing=5 cellpadding=0 border=0>
376 Definition at line <a class="el" href="modules_8h-source.html#l00625">625</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
379 <a name="a11" doxytag="modules.h::string_list"></a><p>
380 <table width="100%" cellpadding="2" cellspacing="0" border="0">
383 <table cellpadding="0" cellspacing="0" border="0">
385 <td class="md" nowrap valign="top"> typedef <a class="el" href="modules_8h.html#a10">file_cache</a> string_list
390 <table cellspacing=5 cellpadding=0 border=0>
400 Definition at line <a class="el" href="modules_8h-source.html#l00031">31</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
403 <hr><h2>Function Documentation</h2>
404 <a name="a13" doxytag="modules.h::createcommand"></a><p>
405 <table width="100%" cellpadding="2" cellspacing="0" border="0">
408 <table cellpadding="0" cellspacing="0" border="0">
410 <td class="md" nowrap valign="top"> void createcommand </td>
411 <td class="md" valign="top">( </td>
412 <td class="md" nowrap valign="top">char * </td>
413 <td class="mdname" nowrap> <em>cmd</em>, </td>
418 <td class="md" nowrap>handlerfunc </td>
419 <td class="mdname" nowrap> <em>f</em>, </td>
424 <td class="md" nowrap>char </td>
425 <td class="mdname" nowrap> <em>flags</em>, </td>
430 <td class="md" nowrap>int </td>
431 <td class="mdname" nowrap> <em>minparams</em></td>
435 <td class="md">) </td>
436 <td class="md" colspan="2"></td>
443 <table cellspacing=5 cellpadding=0 border=0>
453 Referenced by <a class="el" href="modules_8cpp-source.html#l00190">Server::AddCommand()</a>. </td>
456 <a name="a14" doxytag="modules.h::server_mode"></a><p>
457 <table width="100%" cellpadding="2" cellspacing="0" border="0">
460 <table cellpadding="0" cellspacing="0" border="0">
462 <td class="md" nowrap valign="top"> void server_mode </td>
463 <td class="md" valign="top">( </td>
464 <td class="md" nowrap valign="top">char ** </td>
465 <td class="mdname" nowrap> <em>parameters</em>, </td>
470 <td class="md" nowrap>int </td>
471 <td class="mdname" nowrap> <em>pcnt</em>, </td>
476 <td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> * </td>
477 <td class="mdname" nowrap> <em>user</em></td>
481 <td class="md">) </td>
482 <td class="md" colspan="2"></td>
489 <table cellspacing=5 cellpadding=0 border=0>
499 Referenced by <a class="el" href="modules_8cpp-source.html#l00195">Server::SendMode()</a>. </td>
502 <hr><address style="align: right;"><small>Generated on Mon Apr 19 02:34:36 2004 for InspIRCd by
503 <a href="http://www.doxygen.org/index.html">
504 <img src="doxygen.png" alt="doxygen" align="middle" border=0
505 width=110 height=53></a>1.3-rc3 </small></address>