1 #ifndef _SIGX_GLIB_LOCKABLES_HPP_
2 #define _SIGX_GLIB_LOCKABLES_HPP_
31 #include <glibmm/thread.h>
43 template<
typename T_type>
59 template<
typename T_type>
75 template<
typename T_type>
84 g_static_mutex_init(this->
m_mutex.gobj());
90 g_static_mutex_init(this->
m_mutex.gobj());
96 template<
typename T_type>
112 template<
typename T_type>
121 g_static_rec_mutex_init(this->
m_mutex.gobj());
127 g_static_rec_mutex_init(this->
m_mutex.gobj());
135 typedef Glib::RWLock::ReaderLock
type;
141 typedef Glib::RWLock::WriterLock
type;
144 template<locking_policy I_policy>
147 typedef Glib::Mutex::Lock
type;
150 template<locking_policy I_policy>
153 typedef Glib::RecMutex::Lock
type;
156 template<locking_policy I_policy>
162 template<locking_policy I_policy>
178 #endif // end file guard
Metafunction that chooses an appropriate scoped lock for a mutex.
Definition: choose_lock.h:56
mutex_type m_mutex
Definition: lockable.h:69
Glib::RecMutex::Lock type
Definition: glib_lockables.h:165
recmutex_lockable(typename parent_type::const_reference_type v)
Definition: glib_lockables.h:105
Glib::Mutex::Lock type
Definition: glib_lockables.h:147
Makes T_type lockable with a Glib::StaticRecMutex.
Definition: glib_lockables.h:113
rw_lockable(typename parent_type::const_reference_type v)
Definition: glib_lockables.h:52
Definition: lockable_fwddecl.h:33
lockable< T_type, Glib::RWLock > parent_type
Definition: glib_lockables.h:46
mutex_lockable()
Definition: glib_lockables.h:65
static_mutex_lockable(typename parent_type::const_reference_type v)
Definition: glib_lockables.h:87
rw_lockable()
Definition: glib_lockables.h:49
Makes T_type read/write lockable with a Glib::RWLock.
Definition: glib_lockables.h:44
static_mutex_lockable()
Definition: glib_lockables.h:81
Definition: lockable_fwddecl.h:32
Glib::RWLock::ReaderLock type
Definition: glib_lockables.h:135
Refinement of safe_lockable, open access to mutex and locked type.
Definition: lockable.h:177
Glib::Mutex::Lock type
Definition: glib_lockables.h:159
static_recmutex_lockable(typename parent_type::const_reference_type v)
Definition: glib_lockables.h:124
Glib::RecMutex::Lock type
Definition: glib_lockables.h:153
Definition: auto_dispatchable.h:27
recmutex_lockable()
Definition: glib_lockables.h:102
Makes T_type lockable with a Glib::RecMutex.
Definition: glib_lockables.h:97
std::tr1::add_reference< typename const_trait< reference_type >::add >::type const_reference_type
Definition: lockable.h:110
static_recmutex_lockable()
Definition: glib_lockables.h:118
Makes T_type lockable with a Glib::StaticMutex.
Definition: glib_lockables.h:76
Glib::RWLock::WriterLock type
Definition: glib_lockables.h:141
Makes T_type lockable with a Glib::Mutex.
Definition: glib_lockables.h:60
mutex_lockable(typename parent_type::const_reference_type v)
Definition: glib_lockables.h:68