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

Event Class Reference

The Event class is a unicast message directed at all modules. More...

#include <modules.h>

Inheritance diagram for Event:

Inheritance graph
[legend]
Collaboration diagram for Event:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Event (char *anydata, Module *src, std::string eventid)
 Create a new Event.
char * GetData ()
 Get the Event data.
ModuleGetSource ()
 Get the event Source.
std::string GetEventID ()
 Get the event ID.
char * Send ()
 Send the Event.

Protected Attributes

char * data
 This member holds a pointer to arbitary data set by the emitter of the message.
Modulesource
 This is a pointer to the sender of the message, which can be used to directly trigger events, or to create a reply.
std::string id
 The event identifier.

Detailed Description

The Event class is a unicast message directed at all modules.

When the class is properly instantiated it may be sent to all modules using the Send() method, which will trigger the OnEvent method in all modules passing the object as its parameter.

Definition at line 196 of file modules.h.


Constructor & Destructor Documentation

Event::Event char *  anydata,
Module src,
std::string  eventid
 

Create a new Event.

Definition at line 281 of file modules.cpp.

00281 : data(anydata), source(src), id(eventid) { };


Member Function Documentation

char * Event::GetData  ) 
 

Get the Event data.

Definition at line 283 of file modules.cpp.

References data.

00284 {
00285         return this->data;
00286 }

std::string Event::GetEventID  ) 
 

Get the event ID.

Use this to determine the event type for safe casting of the data

Definition at line 299 of file modules.cpp.

References id.

00300 {
00301         return this->id;
00302 }

Module * Event::GetSource  ) 
 

Get the event Source.

Definition at line 288 of file modules.cpp.

References source.

00289 {
00290         return this->source;
00291 }

char * Event::Send  )  [virtual]
 

Send the Event.

The return result of an Event::Send() will always be NULL as no replies are expected.

Implements ModuleMessage.

Definition at line 293 of file modules.cpp.

References FOREACH_MOD.

00294 {
00295         FOREACH_MOD OnEvent(this);
00296         return NULL;
00297 }


Member Data Documentation

char* Event::data [protected]
 

This member holds a pointer to arbitary data set by the emitter of the message.

Definition at line 201 of file modules.h.

Referenced by GetData().

std::string Event::id [protected]
 

The event identifier.

This is arbitary text which should be used to distinguish one type of event from another.

Definition at line 210 of file modules.h.

Referenced by GetEventID().

Module* Event::source [protected]
 

This is a pointer to the sender of the message, which can be used to directly trigger events, or to create a reply.

Definition at line 205 of file modules.h.

Referenced by GetSource().


The documentation for this class was generated from the following files:
Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by  doxygen 1.4.4-20050815