fpmas 1.6
single_thread_mutex.h
Go to the documentation of this file.
1#ifndef FPMAS_SINGLE_THREAD_MUTEX_H
2#define FPMAS_SINGLE_THREAD_MUTEX_H
3
5
10namespace fpmas { namespace synchro { namespace ghost {
11
16 template<typename T>
18 private:
19 T& _data;
20 void _lock() override {};
21 void _lockShared() override {};
22 void _unlock() override {};
23 void _unlockShared() override {};
24
25 public:
31 SingleThreadMutex(T& data) : _data(data) {}
32
33 T& data() override {return _data;}
34 const T& data() const override {return _data;}
35
36 void lock() override {};
37 void unlock() override {};
38 bool locked() const override {return false;}
39
40 void lockShared() override {};
41 void unlockShared() override {};
42 int sharedLockCount() const override {return 0;};
43 };
44
45}}}
46#endif
Definition: mutex.h:26
Definition: single_thread_mutex.h:17
void lock() override
Definition: single_thread_mutex.h:36
T & data() override
Definition: single_thread_mutex.h:33
const T & data() const override
Definition: single_thread_mutex.h:34
bool locked() const override
Definition: single_thread_mutex.h:38
void unlockShared() override
Definition: single_thread_mutex.h:41
int sharedLockCount() const override
Definition: single_thread_mutex.h:42
void unlock() override
Definition: single_thread_mutex.h:37
void lockShared() override
Definition: single_thread_mutex.h:40
SingleThreadMutex(T &data)
Definition: single_thread_mutex.h:31
Definition: fpmas.cpp:3