#include <cseventq.h>
Inheritance diagram for csEventQueue:

Public Methods | |
| csEventQueue (iObjectRegistry *, size_t iLength=DEF_EVENT_QUEUE_LENGTH) | |
| Initialize the event queue. | |
| virtual | ~csEventQueue () |
| Destroy an event queue object. | |
| virtual void | Process () |
| Process the event queue. Calls Dispatch() once for each contained event. | |
| virtual void | Dispatch (iEvent &) |
| Dispatch a single event from the queue; normally called by Process(). | |
| virtual void | RegisterListener (iEventHandler *, unsigned int trigger) |
| Register a listener for specific events. | |
| virtual void | RemoveListener (iEventHandler *) |
| Unregister a listener. | |
| virtual void | ChangeListenerTrigger (iEventHandler *, unsigned int trigger) |
| Change a listener's trigger. | |
| virtual iEventOutlet* | CreateEventOutlet (iEventPlug *) |
| Register an event plug and return a new outlet. | |
| virtual iEventOutlet* | GetEventOutlet () |
| Get a public event outlet for posting just an event. | |
| virtual iEventCord* | GetEventCord (int Category, int Subcategory) |
| Get the event cord for a given category and subcategory. | |
| virtual void | Post (iEvent *) |
| Place an event into queue. | |
| virtual iEvent* | Get () |
| Get next event from queue or NULL. | |
| virtual void | Clear () |
| Clear event queue. | |
| virtual bool | IsEmpty () |
| Query if queue is empty (@ Not thread safe!). More... | |
Public Attributes | |
| SCF_DECLARE_IBASE | |
Friends | |
| class | csEventOutlet |
See the documentation of iEventQueue for a detailed description of each method. One instance of this class is usually shared via iObjectRegistry.
The implemented event queue is limited thread-safe. There are some primitive spinlocks acquired/released in critical sections.
|
|
Query if queue is empty (@ Not thread safe!). @ Reimplemented from iEventQueue. |