Rudiments
|
00001 // Copyright (c) 2004 David Muse 00002 // See the COPYING file for more information. 00003 00004 #ifndef RUDIMENTS_MUTEX_H 00005 #define RUDIMENTS_MUTEX_H 00006 00007 #include <rudiments/private/mutexincludes.h> 00008 00009 #ifdef RUDIMENTS_NAMESPACE 00010 namespace rudiments { 00011 #endif 00012 00013 class mutexprivate; 00014 00017 class RUDIMENTS_DLLSPEC mutex { 00018 public: 00019 00021 mutex(); 00022 00028 mutex(void *mut); 00029 00031 ~mutex(); 00032 00035 bool lock(); 00036 00041 bool tryLock(); 00042 00045 bool unlock(); 00046 00051 void *getInternalMutexStructure(); 00052 00053 #include <rudiments/private/mutex.h> 00054 }; 00055 00056 #ifdef RUDIMENTS_NAMESPACE 00057 } 00058 #endif 00059 00060 #endif