The InspIRCd Project
Home | Developers | Wiki | Forums | Bug Tracker | SVN | Download
Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

ModuleNamesX Class Reference

Inheritance diagram for ModuleNamesX:

Inheritance graph
[legend]
Collaboration diagram for ModuleNamesX:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ModuleNamesX (InspIRCd *Me)
virtual ~ModuleNamesX ()
void OnSyncUserMetaData (User *user, Module *proto, void *opaque, const std::string &extname, bool displayable)
virtual Version GetVersion ()
 Returns the version number of a Module.
virtual void On005Numeric (std::string &output)
 Called when a 005 numeric is about to be output.
virtual int OnPreCommand (std::string &command, std::vector< std::string > &parameters, User *user, bool validated, const std::string &original_line)
 Called whenever any command is about to be executed.
virtual void OnNamesListItem (User *issuer, User *user, Channel *channel, std::string &prefixes, std::string &nick)
 Called for every item in a NAMES list, so that modules may reformat portions of it as they see fit.
virtual void OnEvent (Event *ev)
 Called whenever an Event class is sent to all module by another module.

Detailed Description

Definition at line 19 of file m_namesx.cpp.


Constructor & Destructor Documentation

ModuleNamesX::ModuleNamesX InspIRCd Me  )  [inline]
 

Definition at line 23 of file m_namesx.cpp.

References ModuleManager::Attach(), I_On005Numeric, I_OnEvent, I_OnNamesListItem, I_OnPreCommand, I_OnSyncUserMetaData, InspIRCd::Modules, and Module::ServerInstance.

virtual ModuleNamesX::~ModuleNamesX  )  [inline, virtual]
 

Definition at line 31 of file m_namesx.cpp.


Member Function Documentation

virtual Version ModuleNamesX::GetVersion  )  [inline, virtual]
 

Returns the version number of a Module.

The method should return a Version object with its version information assigned via Version::Version

Reimplemented from Module.

Definition at line 41 of file m_namesx.cpp.

References API_VERSION, and VF_VENDOR.

virtual void ModuleNamesX::On005Numeric std::string output  )  [inline, virtual]
 

Called when a 005 numeric is about to be output.

The module should modify the 005 numeric if needed to indicate its features.

Parameters:
output The 005 string to be modified if neccessary.

Reimplemented from Module.

Definition at line 46 of file m_namesx.cpp.

virtual void ModuleNamesX::OnEvent Event ev  )  [inline, virtual]
 

Called whenever an Event class is sent to all module by another module.

Please see the documentation of Event::Send() for further information. The Event sent can always be assumed to be non-NULL, you should *always* check the value of Event::GetEventID() before doing anything to the event data, and you should *not* change the event data in any way!

Parameters:
event The Event class being received

Reimplemented from Module.

Definition at line 82 of file m_namesx.cpp.

References GenericCapHandler().

virtual void ModuleNamesX::OnNamesListItem User issuer,
User user,
Channel channel,
std::string prefixes,
std::string nick
[inline, virtual]
 

Called for every item in a NAMES list, so that modules may reformat portions of it as they see fit.

For example NAMESX, channel mode +u and +I, and UHNAMES. If the nick is set to an empty string by any module, then this will cause the nickname not to be displayed at all.

Reimplemented from Module.

Definition at line 70 of file m_namesx.cpp.

References Channel::GetAllPrefixChars(), and Extensible::GetExt().

virtual int ModuleNamesX::OnPreCommand std::string command,
std::vector< std::string > &  parameters,
User user,
bool  validated,
const std::string original_line
[inline, virtual]
 

Called whenever any command is about to be executed.

This event occurs for all registered commands, wether they are registered in the core, or another module, and for invalid commands. Invalid commands may only be sent to this function when the value of validated is false. By returning 1 from this method you may prevent the command being executed. If you do this, no output is created by the core, and it is down to your module to produce any output neccessary. Note that unless you return 1, you should not destroy any structures (e.g. by using InspIRCd::QuitUser) otherwise when the command's handler function executes after your method returns, it will be passed an invalid pointer to the user object and crash!)

Parameters:
command The command being executed
parameters An array of array of characters containing the parameters for the command
pcnt The nuimber of parameters passed to the command
user the user issuing the command
validated True if the command has passed all checks, e.g. it is recognised, has enough parameters, the user has permission to execute it, etc. You should only change the parameter list and command string if validated == false (e.g. before the command lookup occurs).
original_line The entire original line as passed to the parser from the user
Returns:
1 to block the command, 0 to allow

Reimplemented from Module.

Definition at line 51 of file m_namesx.cpp.

References Extensible::Extend().

void ModuleNamesX::OnSyncUserMetaData User user,
Module proto,
void *  opaque,
const std::string extname,
bool  displayable
[inline, virtual]
 

Reimplemented from Module.

Definition at line 35 of file m_namesx.cpp.

References Module::ProtoSendMetaData(), and TYPE_USER.


The documentation for this class was generated from the following file: