OpenDaVINCI  4.15.3
WIN32Condition.h
Go to the documentation of this file.
1 
20 #ifndef OPENDAVINCI_CORE_WRAPPER_WIN32IMPL_WIN32CONDITION_H_
21 #define OPENDAVINCI_CORE_WRAPPER_WIN32IMPL_WIN32CONDITION_H_
22 
23 // Using c++11 standard.
24 #include <condition_variable>
25 
27 
32 
33 namespace odcore {
34  namespace wrapper {
35  namespace WIN32Impl {
36 
37  using namespace std;
38 
44  class WIN32Condition : public Condition {
45  private:
47 
49 
50  private:
57 
63  WIN32Condition& operator=(const WIN32Condition &);
64 
65  public:
66  virtual ~WIN32Condition();
67 
68  virtual void waitOnSignal();
69 
70  virtual bool waitOnSignalWithTimeout(const unsigned long ms);
71 
72  virtual void wakeOne();
73 
74  virtual void wakeAll();
75 
76  virtual void lock();
77 
78  virtual bool tryLock();
79 
80  virtual void unlock();
81 
82  private:
83  std::condition_variable m_condition;
84  WIN32Mutex m_mutex;
85  };
86 
87  }
88  }
89 } // odcore::wrapper::WIN32Impl
90 
91 #endif /*OPENDAVINCI_CORE_WRAPPER_WIN32IMPL_WIN32CONDITION_H_*/
Definition: base/Condition.h:64
Definition: WIN32Condition.h:44
Definition: ConditionFactoryWorker.h:39
Definition: WIN32Mutex.h:45
Definition: SystemLibraryProducts.h:29