summaryrefslogtreecommitdiff
path: root/src/itoatom.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/itoatom.h')
-rw-r--r--src/itoatom.h64
1 files changed, 0 insertions, 64 deletions
diff --git a/src/itoatom.h b/src/itoatom.h
deleted file mode 100644
index 3659f4e..0000000
--- a/src/itoatom.h
+++ /dev/null
@@ -1,64 +0,0 @@
1/*
2 * Copyright (C) 2007-2011 Xagasoft, All rights reserved.
3 *
4 * This file is part of the libbu++ library and is released under the
5 * terms of the license contained in the file LICENSE.
6 */
7
8#ifndef BU_ITO_ATOM_H
9#define BU_ITO_ATOM_H
10
11#include <pthread.h>
12
13#include "itomutex.h"
14#include "itocondition.h"
15
16namespace Bu
17{
18 /**
19 * A thread-safe wrapper class.
20 *@ingroup Threading
21 */
22 template <class T>
23 class ItoAtom
24 {
25 public:
26 /**
27 * Construct an empty queue.
28 */
29 ItoAtom()
30 {
31 }
32
33 ItoAtom( const T &src ) :
34 data( src )
35 {
36 }
37
38 ~ItoAtom()
39 {
40 }
41
42 T get()
43 {
44 mOperate.lock();
45 T ret = data;
46 mOperate.unlock();
47 return ret;
48 }
49
50 void set( const T &val )
51 {
52 mOperate.lock();
53 data = val;
54 mOperate.unlock();
55 }
56
57 private:
58 T data;
59
60 ItoMutex mOperate; /**< The master mutex, used on all operations. */
61 };
62};
63
64#endif