Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

modules.h File Reference

#include "dynamic.h"
#include "base.h"
#include "ctables.h"
#include "socket.h"
#include <string>
#include <deque>
#include <sstream>

Include dependency graph for modules.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Version
 Holds a module's Version information The four members (set by the constructor only) indicate details as to the version number of a module. More...
class  Admin
 Holds /ADMIN data This class contains the admin details of the local server. More...
class  ModuleMessage
 The ModuleMessage class is the base class of Request and Event This class is used to represent a basic data structure which is passed between modules for safe inter-module communications. More...
class  Request
 The Request class is a unicast message directed at a given module. More...
class  Event
 The Event class is a unicast message directed at all modules. More...
class  ExtMode
 Holds an extended mode's details. More...
class  Module
 Base class for all InspIRCd modules This class is the base class for InspIRCd modules. More...
class  Server
 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. More...
class  ConfigReader
 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. More...
class  FileReader
 Caches a text file into memory and can be used to retrieve lines from it. More...
class  ModuleFactory
 Instantiates classes inherited from Module This class creates a class inherited from type Module, using new. More...

Defines

#define DEBUG   10
 log levels
#define VERBOSE   20
#define DEFAULT   30
#define SPARSE   40
#define NONE   50
#define MT_CHANNEL   1
 Used with OnExtendedMode() method of modules.
#define MT_CLIENT   2
#define MT_SERVER   3
#define ACR_DEFAULT   0
 Used with OnAccessCheck() method of modules.
#define ACR_DENY   1
#define ACR_ALLOW   2
#define AC_KICK   0
#define AC_DEOP   1
#define AC_OP   2
#define AC_VOICE   3
#define AC_DEVOICE   4
#define AC_HALFOP   5
#define AC_DEHALFOP   6
#define AC_INVITE   7
#define AC_GENERAL_MODE   8
#define VF_STATIC   1
 Used to define a set of behavior bits for a module.
#define VF_VENDOR   2
#define VF_SERVICEPROVIDER   4
#define VF_COMMON   8
#define FOREACH_MOD   for (int _i = 0; _i <= MODCOUNT; _i++) modules[_i]->
#define FOREACH_RESULT(x)
#define FD_MAGIC_NUMBER   -42
#define CONF_NOT_A_NUMBER   0x000010
#define CONF_NOT_UNSIGNED   0x000080
#define CONF_VALUE_NOT_FOUND   0x000100
#define CONF_FILE_NOT_FOUND   0x000200

Typedefs

typedef std::deque< std::stringfile_cache
 Low level definition of a FileReader classes file cache area.
typedef file_cache string_list
typedef std::deque< userrec * > chanuserlist
 Holds a list of users in a channel.
typedef DLLFactory< ModuleFactoryircd_module

Functions

void createcommand (char *cmd, handlerfunc f, char flags, int minparams, char *source)
void server_mode (char **parameters, int pcnt, userrec *user)


Define Documentation

#define AC_DEHALFOP   6
 

Definition at line 46 of file modules.h.

#define AC_DEOP   1
 

Definition at line 41 of file modules.h.

#define AC_DEVOICE   4
 

Definition at line 44 of file modules.h.

#define AC_GENERAL_MODE   8
 

Definition at line 48 of file modules.h.

#define AC_HALFOP   5
 

Definition at line 45 of file modules.h.

#define AC_INVITE   7
 

Definition at line 47 of file modules.h.

#define AC_KICK   0
 

Definition at line 40 of file modules.h.

#define AC_OP   2
 

Definition at line 42 of file modules.h.

#define AC_VOICE   3
 

Definition at line 43 of file modules.h.

#define ACR_ALLOW   2
 

Definition at line 39 of file modules.h.

#define ACR_DEFAULT   0
 

Used with OnAccessCheck() method of modules.

Definition at line 37 of file modules.h.

Referenced by Module::OnAccessCheck().

#define ACR_DENY   1
 

Definition at line 38 of file modules.h.

#define CONF_FILE_NOT_FOUND   0x000200
 

Definition at line 1516 of file modules.h.

Referenced by ConfigReader::ConfigReader().

#define CONF_NOT_A_NUMBER   0x000010
 

Definition at line 1513 of file modules.h.

Referenced by ConfigReader::ReadInteger().

#define CONF_NOT_UNSIGNED   0x000080
 

Definition at line 1514 of file modules.h.

Referenced by ConfigReader::ReadInteger().

#define CONF_VALUE_NOT_FOUND   0x000100
 

Definition at line 1515 of file modules.h.

Referenced by ConfigReader::ReadFlag(), ConfigReader::ReadInteger(), and ConfigReader::ReadValue().

#define DEBUG   10
 

log levels

Definition at line 23 of file modules.h.

#define DEFAULT   30
 

Definition at line 25 of file modules.h.

#define FD_MAGIC_NUMBER   -42
 

Definition at line 101 of file modules.h.

Referenced by Server::PseudoToUser(), and Server::UserToPseudo().

#define FOREACH_MOD   for (int _i = 0; _i <= MODCOUNT; _i++) modules[_i]->
 

Definition at line 81 of file modules.h.

Referenced by Event::Send().

#define FOREACH_RESULT  ) 
 

Value:

{ MOD_RESULT = 0; \
                        for (int _i = 0; _i <= MODCOUNT; _i++) { \
                        int res = modules[_i]->x ; \
                        if (res != 0) { \
                                MOD_RESULT = res; \
                                break; \
                        } \
                } \
        }

Definition at line 89 of file modules.h.

#define MT_CHANNEL   1
 

Used with OnExtendedMode() method of modules.

Definition at line 31 of file modules.h.

Referenced by Server::AddExtendedListMode(), and ModeMakeList().

#define MT_CLIENT   2
 

Definition at line 32 of file modules.h.

Referenced by Server::AddExtendedMode().

#define MT_SERVER   3
 

Definition at line 33 of file modules.h.

Referenced by Server::AddExtendedMode().

#define NONE   50
 

Definition at line 27 of file modules.h.

#define SPARSE   40
 

Definition at line 26 of file modules.h.

#define VERBOSE   20
 

Definition at line 24 of file modules.h.

#define VF_COMMON   8
 

Definition at line 55 of file modules.h.

#define VF_SERVICEPROVIDER   4
 

Definition at line 54 of file modules.h.

#define VF_STATIC   1
 

Used to define a set of behavior bits for a module.

Definition at line 52 of file modules.h.

#define VF_VENDOR   2
 

Definition at line 53 of file modules.h.

Referenced by Module::GetVersion().


Typedef Documentation

typedef std::deque<userrec*> chanuserlist
 

Holds a list of users in a channel.

Definition at line 74 of file modules.h.

typedef std::deque<std::string> file_cache
 

Low level definition of a FileReader classes file cache area.

Definition at line 65 of file modules.h.

typedef DLLFactory<ModuleFactory> ircd_module
 

Definition at line 1682 of file modules.h.

typedef file_cache string_list
 

Definition at line 70 of file modules.h.


Function Documentation

void createcommand char *  cmd,
handlerfunc  f,
char  flags,
int  minparams,
char *  source
 

Referenced by Server::AddCommand().

void server_mode char **  parameters,
int  pcnt,
userrec user
 


Generated on Wed Dec 14 14:49:25 2005 for InspIRCd by  doxygen 1.4.4-20050815