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 197 of file modules.h.


Constructor & Destructor Documentation

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

Create a new Event.

Definition at line 275 of file modules.cpp.

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


Member Function Documentation

char * Event::GetData  ) 
 

Get the Event data.

Definition at line 277 of file modules.cpp.

References data.

00278 {
00279         return this->data;
00280 }

std::string Event::GetEventID  ) 
 

Get the event ID.

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

Definition at line 293 of file modules.cpp.

References id.

00294 {
00295         return this->id;
00296 }

Module * Event::GetSource  ) 
 

Get the event Source.

Definition at line 282 of file modules.cpp.

References source.

00283 {
00284         return this->source;
00285 }

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 287 of file modules.cpp.

References FOREACH_MOD.

00288 {
00289         FOREACH_MOD OnEvent(this);
00290         return NULL;
00291 }


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 202 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 211 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 206 of file modules.h.

Referenced by GetSource().


The documentation for this class was generated from the following files:
Generated on Mon Dec 12 18:31:02 2005 for InspIRCd by  doxygen 1.4.4-20050815