5 #ifndef __LOGOG_MUTEX_HPP__
6 #define __LOGOG_MUTEX_HPP__
8 #ifdef LOGOG_FLAVOR_POSIX
18 #ifdef LOGOG_FLAVOR_WINDOWS
19 #define LOGOG_MUTEX(x) CRITICAL_SECTION (x);
20 #define LOGOG_MUTEX_INIT(x) InitializeCriticalSection (x)
21 #define LOGOG_MUTEX_DELETE(x) DeleteCriticalSection (x)
22 #define LOGOG_MUTEX_LOCK(x) EnterCriticalSection (x)
23 #define LOGOG_MUTEX_UNLOCK(x) LeaveCriticalSection (x)
24 #define LOGOG_MUTEX_CTOR(x)
25 #endif // LOGOG_FLAVOR_WINDOWS
27 #ifdef LOGOG_FLAVOR_POSIX
28 #define LOGOG_MUTEX(x) pthread_mutex_t (x);
29 #define LOGOG_MUTEX_INIT(x) pthread_mutex_init(x, 0)
30 #define LOGOG_MUTEX_DELETE(x) pthread_mutex_destroy (x)
31 #define LOGOG_MUTEX_LOCK(x) pthread_mutex_lock (x)
32 #define LOGOG_MUTEX_UNLOCK(x) pthread_mutex_unlock (x)
33 #define LOGOG_MUTEX_CTOR(x)
34 #endif // LOGOG_FLAVOR_POSIX
38 #error You need to define mutex macros for your platform; please see mutex.hpp
62 LOGOG_MUTEX( m_Mutex )
87 #ifdef LOGOG_LEAK_DETECTION
91 #endif // LOGOG_LEAK_DETECTION
98 #endif // __LOGOG_MUTEX_HPP_
[Thread]
Definition: api.hpp:8
Mutex & operator=(const Mutex &)
[Mutex]
Definition: mutex.hpp:48
void UnlockAllocationsMutex()
Mutex & GetStringSearchMutex()
Mutex * m_pMutex
Definition: mutex.hpp:78
Definition: object.hpp:47
void LockAllocationsMutex()
void DestroyStringSearchMutex()