#include <IEventQueueBuffer.h>
Inherits IInterface.
Inherited by CMSWindowsEventQueueBuffer, COSXEventQueueBuffer, CSimpleEventQueueBuffer, and CXWindowsEventQueueBuffer.
Inheritance diagram for IEventQueueBuffer:
Public Types | |
enum | Type { kNone, kSystem, kUser } |
Public Member Functions | |
manipulators | |
virtual void | waitForEvent (double timeout)=0 |
Block waiting for an event. | |
virtual Type | getEvent (CEvent &event, UInt32 &dataID)=0 |
Get the next event. | |
virtual bool | addEvent (UInt32 dataID)=0 |
Post an event. | |
accessors | |
virtual bool | isEmpty () const =0 |
Check if event queue buffer is empty. | |
virtual CEventQueueTimer * | newTimer (double duration, bool oneShot) const =0 |
Create a timer object. | |
virtual void | deleteTimer (CEventQueueTimer *) const =0 |
Destroy a timer object. |
An event queue buffer provides a queue of events for an IEventQueue.
Definition at line 28 of file IEventQueueBuffer.h.
|
Definition at line 30 of file IEventQueueBuffer.h. |
|
Post an event.
Add the given event to the end of the queue buffer. This is a user event and Implemented in CSimpleEventQueueBuffer, CMSWindowsEventQueueBuffer, COSXEventQueueBuffer, and CXWindowsEventQueueBuffer. Referenced by CEventQueue::addEvent(). |
|
Destroy a timer object.
Destroy a timer object previously returned by Implemented in CSimpleEventQueueBuffer, CMSWindowsEventQueueBuffer, COSXEventQueueBuffer, and CXWindowsEventQueueBuffer. Referenced by CEventQueue::deleteTimer(). |
|
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 Implemented in CSimpleEventQueueBuffer, CMSWindowsEventQueueBuffer, COSXEventQueueBuffer, and CXWindowsEventQueueBuffer. Referenced by CEventQueue::getEvent(). |
|
Check if event queue buffer is empty. Return true iff the event queue buffer is empty. Implemented in CSimpleEventQueueBuffer, CMSWindowsEventQueueBuffer, COSXEventQueueBuffer, and CXWindowsEventQueueBuffer. Referenced by CEventQueue::getEvent(), and CEventQueue::isEmpty(). |
|
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). Implemented in CSimpleEventQueueBuffer, CMSWindowsEventQueueBuffer, COSXEventQueueBuffer, and CXWindowsEventQueueBuffer. Referenced by CEventQueue::newOneShotTimer(), and CEventQueue::newTimer(). |
|
Block waiting for an event.
Wait for an event in the event queue buffer for up to Implemented in CSimpleEventQueueBuffer, CMSWindowsEventQueueBuffer, COSXEventQueueBuffer, and CXWindowsEventQueueBuffer. Referenced by CEventQueue::getEvent(). |