Rudiments
/home/dmuse/src/rudiments/include/rudiments/mutex.h
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