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

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


Member Function Documentation

char * Event::GetData  ) 
 

Get the Event data.

Definition at line 347 of file modules.cpp.

References data.

00348 {
00349         return this->data;
00350 }

std::string Event::GetEventID  ) 
 

Get the event ID.

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

Definition at line 363 of file modules.cpp.

References id.

00364 {
00365         return this->id;
00366 }

Module * Event::GetSource  ) 
 

Get the event Source.

Definition at line 352 of file modules.cpp.

References source.

00353 {
00354         return this->source;
00355 }

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

References FOREACH_MOD.

00358 {
00359         FOREACH_MOD OnEvent(this);
00360         return NULL;
00361 }


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 Fri May 13 01:59:38 2005 for InspIRCd by doxygen 1.3.3