X-Git-Url: http://sraa.de/git/?a=blobdiff_plain;f=dol%2Fsrc%2Fdol%2Fvisitor%2FPipeAndFilter%2Flib%2FEvent.h;fp=dol%2Fsrc%2Fdol%2Fvisitor%2FPipeAndFilter%2Flib%2FEvent.h;h=51d14e816ec1c7636e4ceb406a635750b175d8ce;hb=8c411cf24ed0eb889191aaeafd8fa1e69081df42;hp=0000000000000000000000000000000000000000;hpb=dea7a4fb1ed110d3ce6e6d9255103d724bd66c0e;p=jump.git diff --git a/dol/src/dol/visitor/PipeAndFilter/lib/Event.h b/dol/src/dol/visitor/PipeAndFilter/lib/Event.h new file mode 100644 index 0000000..51d14e8 --- /dev/null +++ b/dol/src/dol/visitor/PipeAndFilter/lib/Event.h @@ -0,0 +1,30 @@ +#ifndef _EVENT_H_ +#define _EVENT_H_ + +#include +#include +#include +#include "Mutex.h" +#include "Condition.h" + +class Event { + public: + Event(); + Event(std::string name); + Event(Mutex *mutex); + virtual ~Event(); + virtual void notify(); + virtual void notifyAll(); + virtual void wait(); + virtual void notifyAfterWait(); + + protected: + Mutex *_mutex; + Condition *_condition; + Mutex *_waitMutex; + Condition *_waitCondition; + bool _pendingWait; + std::string _name; +}; + +#endif