Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members  

event_listener.h

Go to the documentation of this file.
00001 
00003 
00004 #ifndef header_event_listener
00005 #define header_event_listener
00006 
00007 class CL_EventTrigger;
00008 
00009 class CL_EventListener
00010 // The event listener is used to collect a set of events, identified as CL_EventTrigger,
00011 // and wait for one of them to occour. This is analog to the lowlevel C socket select()
00012 // function, except that this one operates on clanlib objects.
00013 {
00015 public:
00016         CL_EventListener();
00017         // Constructs an empty event listener object.
00018 
00019         CL_EventListener(CL_EventTrigger *trigger);
00020         // Constructs an event listener with one trigger in it.
00021 
00022         virtual ~CL_EventListener();
00023 
00025 public:
00026 
00028 public:
00029         void add_trigger(CL_EventTrigger *trigger);
00030         // Adds an event trigger to the listener.
00031 
00032         void remove_trigger(CL_EventTrigger *trigger);
00033         // Removes an event trigger from the listener.
00034 
00035         void clear();
00036         // Removes all event triggers from the listener.
00037 
00038         void reset_all();
00039         // Resets all event triggers added to the listener.
00040 
00041         bool wait(int timeout = -1);
00042         // Wait until one of the events triggers. The timeout is in milliseconds.
00043         // Returns true if an event triggered, false if it timed out.
00044 
00046 private:
00047         class CL_EventListener_Generic *impl;
00048 };
00049 
00050 #endif

Generated at Wed Apr 4 19:54:00 2001 for ClanLib by doxygen1.2.6 written by Dimitri van Heesch, © 1997-2001