#include <COSXEventQueueBuffer.h>
Inherits IEventQueueBuffer.
Inheritance diagram for COSXEventQueueBuffer:
Public Member Functions | |
COSXEventQueueBuffer () | |
virtual | ~COSXEventQueueBuffer () |
virtual void | waitForEvent (double timeout) |
Block waiting for an event. | |
virtual Type | getEvent (CEvent &event, UInt32 &dataID) |
Get the next event. | |
virtual bool | addEvent (UInt32 dataID) |
Post an event. | |
virtual bool | isEmpty () const |
Check if event queue buffer is empty. | |
virtual CEventQueueTimer * | newTimer (double duration, bool oneShot) const |
Create a timer object. | |
virtual void | deleteTimer (CEventQueueTimer *) const |
Destroy a timer object. |
Definition at line 22 of file COSXEventQueueBuffer.h.
bool COSXEventQueueBuffer::addEvent | ( | UInt32 | dataID | ) | [virtual] |
Post an event.
Add the given event to the end of the queue buffer. This is a user event and getEvent()
must be able to identify it as such and return dataID
. This method must cause waitForEvent()
to return at some future time if it's blocked waiting on an event.
Implements IEventQueueBuffer.
Definition at line 86 of file COSXEventQueueBuffer.cpp.
void COSXEventQueueBuffer::deleteTimer | ( | CEventQueueTimer * | ) | const [virtual] |
Destroy a timer object.
Destroy a timer object previously returned by newTimer()
.
Implements IEventQueueBuffer.
Definition at line 121 of file COSXEventQueueBuffer.cpp.
IEventQueueBuffer::Type COSXEventQueueBuffer::getEvent | ( | CEvent & | event, | |
UInt32 & | dataID | |||
) | [virtual] |
Get the next event.
Get the next event from the buffer. Return kNone if no event is available. If a system event is next, return kSystem and fill in event. The event data in a system event can point to a static buffer (because CEvent::deleteData() will not attempt to delete data in a kSystem event). Otherwise, return kUser and fill in dataID
with the value passed to addEvent()
.
Implements IEventQueueBuffer.
Definition at line 51 of file COSXEventQueueBuffer.cpp.
References IEventQueue::getSystemTarget(), IEventQueueBuffer::kNone, CEvent::kQuit, CEvent::kSystem, IEventQueueBuffer::kSystem, and IEventQueueBuffer::kUser.
bool COSXEventQueueBuffer::isEmpty | ( | ) | const [virtual] |
Check if event queue buffer is empty.
Return true iff the event queue buffer is empty.
Implements IEventQueueBuffer.
Definition at line 107 of file COSXEventQueueBuffer.cpp.
CEventQueueTimer * COSXEventQueueBuffer::newTimer | ( | double | duration, | |
bool | oneShot | |||
) | const [virtual] |
Create a timer object.
Create and return a timer object. The object is opaque and is used only by the buffer but it must be a valid object (i.e. not NULL).
Implements IEventQueueBuffer.
Definition at line 115 of file COSXEventQueueBuffer.cpp.
void COSXEventQueueBuffer::waitForEvent | ( | double | timeout | ) | [virtual] |
Block waiting for an event.
Wait for an event in the event queue buffer for up to timeout
seconds.
Implements IEventQueueBuffer.
Definition at line 44 of file COSXEventQueueBuffer.cpp.