Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound 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 194 of file modules.h.


Constructor & Destructor Documentation

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

Create a new Event.

Definition at line 278 of file modules.cpp.

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


Member Function Documentation

char * Event::GetData  ) 
 

Get the Event data.

Definition at line 280 of file modules.cpp.

References data.

00281 {
00282         return this->data;
00283 }

std::string Event::GetEventID  ) 
 

Get the event ID.

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

Definition at line 296 of file modules.cpp.

References id.

00297 {
00298         return this->id;
00299 }

Module * Event::GetSource  ) 
 

Get the event Source.

Definition at line 285 of file modules.cpp.

References source.

00286 {
00287         return this->source;
00288 }

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

References FOREACH_MOD.

00291 {
00292         FOREACH_MOD OnEvent(this);
00293         return NULL;
00294 }


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 199 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 208 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 203 of file modules.h.

Referenced by GetSource().


The documentation for this class was generated from the following files:
Generated on Wed May 25 21:43:08 2005 for InspIRCd by doxygen 1.3.3