log4cpp 1.1
Loading...
Searching...
No Matches
DummyThreads.hh
Go to the documentation of this file.
1/*
2 * DummyThreads.hh
3 *
4 * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
5 * Copyright 2002, Bastiaan Bakker. All rights reserved.
6 *
7 * See the COPYING file for the terms of usage and distribution.
8 */
9
10#ifndef _LOG4CPP_THREADING_DUMMYTHREADS_HH
11#define _LOG4CPP_THREADING_DUMMYTHREADS_HH
12
14#include <stdio.h>
15#include <string>
16
17namespace log4cpp {
18 namespace threading {
19 std::string getThreadId();
20
25 typedef int Mutex;
26
30 typedef int ScopedLock;
31
32 template<typename T> class ThreadLocalDataHolder {
33 public:
34 typedef T data_type;
35
38 if (_data)
39 delete _data;
40 };
41
42 inline T* get() const {
43 return _data;
44 };
45
46 inline T* operator->() const { return get(); };
47 inline T& operator*() const { return *get(); };
48
49 inline T* release() {
50 T* result = _data;
51 _data = NULL;
52
53 return result;
54 };
55
56 inline void reset(T* p = NULL) {
57 if (_data)
58 delete _data;
59 _data = p;
60 };
61
62 private:
63 T* _data;
64 };
65 }
66}
67#endif
#define LOG4CPP_UNIQUE_PTR
Definition Portability.hh:73
~ThreadLocalDataHolder()
Definition DummyThreads.hh:37
T data_type
Definition DummyThreads.hh:34
ThreadLocalDataHolder()
Definition DummyThreads.hh:36
T * operator->() const
Definition DummyThreads.hh:46
T & operator*() const
Definition DummyThreads.hh:47
T * get() const
Definition DummyThreads.hh:42
void reset(T *p=NULL)
Definition DummyThreads.hh:56
T * release()
Definition DummyThreads.hh:49
boost::mutex Mutex
Dummy type 'int' for Mutex.
Definition BoostThreads.hh:29
boost::mutex::scoped_lock ScopedLock
Dummy type 'int' defintion of ScopedLock;.
Definition BoostThreads.hh:30
static std::string getThreadId()
Return an identifier for the current thread.
Definition BoostThreads.hh:22
The top level namespace for all 'Log for C++' types and classes.
Definition AbortAppender.hh:16