Event. More...
#include <CEvent.h>
Public Types | |
| enum | { kUnknown, kQuit, kSystem, kTimer, kLast } |
| enum | { kNone = 0x00, kDeliverImmediately = 0x01, kDontFreeData = 0x02 } |
| typedef UInt32 | Type |
| typedef UInt32 | Flags |
Public Member Functions | |
| CEvent (Type type, void *target=NULL, void *data=NULL, Flags flags=kNone) | |
Create CEvent with data (POD). | |
accessors | |
| Type | getType () const |
| Get event type. | |
| void * | getTarget () const |
| Get the event target. | |
| void * | getData () const |
| Get the event data (POD). | |
| CEventData * | getDataObject () const |
| Get the event data (non-POD). | |
| Flags | getFlags () const |
| Get event flags. | |
manipulators | |
|
| |
| void | setDataObject (CEventData *dataObject) |
| Set data (non-POD). | |
| static void | deleteData (const CEvent &) |
| Release event data. | |
Event.
A CEvent holds an event type and a pointer to event data.
Definition at line 35 of file CEvent.h.
| anonymous enum |
| anonymous enum |
| CEvent::CEvent | ( | Type | type, | |
| void * | target = NULL, |
|||
| void * | data = NULL, |
|||
| Flags | flags = kNone | |||
| ) |
Create CEvent with data (POD).
The type must have been registered using registerType(). The data must be POD (plain old data) allocated by malloc(), which means it cannot have a constructor, destructor or be composed of any types that do. For non-POD (normal C++ objects use setDataObject(). target is the intended recipient of the event. flags is any combination of Flags.
Definition at line 36 of file CEvent.cpp.
| void CEvent::deleteData | ( | const CEvent & | event | ) | [static] |
Release event data.
Deletes event data for the given event (using free()).
Definition at line 77 of file CEvent.cpp.
References getData(), getFlags(), getType(), kQuit, kSystem, kTimer, and kUnknown.
Referenced by CEventQueue::addEvent(), CEventQueue::adoptBuffer(), and CEventQueue::loop().
| void * CEvent::getData | ( | ) | const |
Get the event data (POD).
Returns the event data (POD).
Definition at line 59 of file CEvent.cpp.
Referenced by deleteData().
| CEventData * CEvent::getDataObject | ( | ) | const |
Get the event data (non-POD).
Returns the event data (non-POD). The difference between this and getData() is that when delete is called on this data, so non-POD (non plain old data) dtor is called.
Definition at line 65 of file CEvent.cpp.
| CEvent::Flags CEvent::getFlags | ( | ) | const |
Get event flags.
Returns the event flags.
Definition at line 71 of file CEvent.cpp.
Referenced by CEventQueue::addEvent(), and deleteData().
| void * CEvent::getTarget | ( | ) | const |
| CEvent::Type CEvent::getType | ( | ) | const |
Get event type.
Returns the event type.
Definition at line 47 of file CEvent.cpp.
Referenced by CEventQueue::addEvent(), deleteData(), CEventQueue::dispatchEvent(), CStreamFilter::filterEvent(), CPacketStreamFilter::filterEvent(), and CEventQueue::loop().
| void CEvent::setDataObject | ( | CEventData * | dataObject | ) |
Set data (non-POD).
Set non-POD (non plain old data), where delete is called when the event is deleted, and the destructor is called.
Definition at line 96 of file CEvent.cpp.
1.7.1