00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef header_mutex_beos
00016 #define header_mutex_beos
00017
00018 #include "API/Core/System/mutex.h"
00019
00020 #include <be/kernel/OS.h>
00021
00022 class CL_Mutex_BeOS : public CL_Mutex
00023 {
00024 public:
00025 CL_Mutex_BeOS();
00026 virtual ~CL_Mutex_BeOS();
00027
00028 virtual void enter();
00029 virtual void leave();
00030
00031 virtual void wait();
00032 virtual void notify();
00033 virtual void notify_all();
00034
00035 private:
00036 sem_id sem;
00037 thread_id owner;
00038 };
00039
00040 #endif