// Event.h V0.1pre - Event class definition
// © 2003 Elliot Nierman


class Event
{


    public:
                         Event();
                         Event(bool Manual_Reset);
                void   Signal();
                void   Reset();
                void   Pulse();
                void   Wait();
                         ~Event();

    private:

#ifdef WIN
              HANDLE event;
#endif

#ifdef POSIX
            pthread_cond_t p_event;
            pthread_mutex_t event_mtx;
            bool signal;
            bool manual;
            int waiters;
            bool pulse;
#endif
};