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, UInt32 flags=kNone) | |
Create CEvent with data. | |
accessors | |
Type | getType () const |
Get event type. | |
void * | getTarget () const |
Get the event target. | |
void * | getData () const |
Get the event data. | |
Flags | getFlags () const |
Get event flags. | |
Static Public Member Functions | |
manipulators | |
static Type | registerType (const char *name) |
Creates a new event type. | |
static Type | registerTypeOnce (Type &type, const char *name) |
Creates a new event type. | |
static const char * | getTypeName (Type type) |
Get name for event. | |
static void | deleteData (const CEvent &) |
Release event data. |
Event.
A CEvent
holds an event type and a pointer to event data.
Definition at line 25 of file CEvent.h.
anonymous enum |
anonymous enum |
CEvent::CEvent | ( | Type | type, | |
void * | target = NULL , |
|||
void * | data = NULL , |
|||
UInt32 | flags = kNone | |||
) |
Create CEvent
with data.
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. target
is the intended recipient of the event. flags
is any combination of Flags
.
void CEvent::deleteData | ( | const CEvent & | event | ) | [static] |
Release event data.
Deletes event data for the given event (using free()).
Definition at line 83 of file CEvent.cpp.
References getData(), getFlags(), getType(), kDontFreeData, kQuit, kSystem, kTimer, and kUnknown.
Referenced by CEventQueue::addEvent(), and CEventQueue::adoptBuffer().
void * CEvent::getData | ( | ) | const |
Get the event data.
Returns the event data.
Definition at line 53 of file CEvent.cpp.
Referenced by deleteData().
CEvent::Flags CEvent::getFlags | ( | ) | const |
Get event flags.
Returns the event flags.
Definition at line 59 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 41 of file CEvent.cpp.
Referenced by CEventQueue::addEvent(), deleteData(), CEventQueue::dispatchEvent(), CStreamFilter::filterEvent(), and CPacketStreamFilter::filterEvent().
const char * CEvent::getTypeName | ( | Type | type | ) | [static] |
Get name for event.
Returns the name for the event type
. This is primarily for debugging.
Definition at line 77 of file CEvent.cpp.
CEvent::Type CEvent::registerType | ( | const char * | name | ) | [static] |
CEvent::Type CEvent::registerTypeOnce | ( | Type & | type, | |
const char * | name | |||
) | [static] |
Creates a new event type.
If type
contains kUnknown
then it is set to a unique event type id otherwise it is left alone. The final value of type
is returned.
Definition at line 71 of file CEvent.cpp.
Referenced by IPrimaryScreen::getButtonDownEvent(), IPrimaryScreen::getButtonUpEvent(), CClientProxy::getClipboardChangedEvent(), IScreen::getClipboardGrabbedEvent(), IDataSocket::getConnectedEvent(), CServer::getConnectedEvent(), CClientListener::getConnectedEvent(), CClient::getConnectedEvent(), IListenSocket::getConnectingEvent(), IDataSocket::getConnectionFailedEvent(), CClient::getConnectionFailedEvent(), ISocket::getDisconnectedEvent(), CServer::getDisconnectedEvent(), CClientProxy::getDisconnectedEvent(), CClient::getDisconnectedEvent(), IScreen::getErrorEvent(), CServer::getErrorEvent(), CClientProxyUnknown::getFailureEvent(), IPrimaryScreen::getFakeInputBeginEvent(), IPrimaryScreen::getFakeInputEndEvent(), IPrimaryScreen::getHotKeyDownEvent(), IPrimaryScreen::getHotKeyUpEvent(), IStream::getInputReadyEvent(), IStream::getInputShutdownEvent(), CServer::getKeyboardBroadcastEvent(), IKeyState::getKeyDownEvent(), IKeyState::getKeyRepeatEvent(), IKeyState::getKeyUpEvent(), CServer::getLockCursorToScreenEvent(), IPrimaryScreen::getMotionOnPrimaryEvent(), IPrimaryScreen::getMotionOnSecondaryEvent(), IStream::getOutputErrorEvent(), IStream::getOutputFlushedEvent(), IStream::getOutputShutdownEvent(), CClientProxy::getReadyEvent(), IScreen::getResumeEvent(), IPrimaryScreen::getScreensaverActivatedEvent(), IPrimaryScreen::getScreensaverDeactivatedEvent(), IScreen::getShapeChangedEvent(), CClientProxyUnknown::getSuccessEvent(), IScreen::getSuspendEvent(), CServer::getSwitchInDirectionEvent(), CServer::getSwitchToScreenEvent(), and IPrimaryScreen::getWheelEvent().