37 #ifndef NVWA_CLASS_LEVEL_LOCK_H 38 #define NVWA_CLASS_LEVEL_LOCK_H 43 #ifndef HAVE_CLASS_TEMPLATE_PARTIAL_SPECIALIZATION 44 #define HAVE_CLASS_TEMPLATE_PARTIAL_SPECIALIZATION 1 54 template <
class _Host,
bool _RealLock = false>
55 class class_level_lock
65 typedef _Host volatile_type;
75 template <
class _Host,
bool _RealLock = true>
106 typedef volatile _Host volatile_type;
109 # if HAVE_CLASS_TEMPLATE_PARTIAL_SPECIALIZATION 111 template <
class _Host>
122 typedef _Host volatile_type;
124 # endif // HAVE_CLASS_TEMPLATE_PARTIAL_SPECIALIZATION 126 template <
class _Host,
bool _RealLock>
128 # endif // _NOTHREADS 132 #endif // NVWA_CLASS_LEVEL_LOCK_H Helper class for class-level locking.
Definition: class_level_lock.h:76
Class for non-reentrant fast mutexes.
Definition: fast_mutex.h:225
Type that provides locking/unlocking semantics.
Definition: class_level_lock.h:89
A fast mutex implementation for POSIX, Win32, and modern C++.
Common definitions for preprocessing.