All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
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 
13 #include <log4cpp/Portability.hh>
14 #include <stdio.h>
15 #include <string>
16 
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 
36  inline ThreadLocalDataHolder() {};
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 }
67 
68 #endif
threading::ThreadLocalDataHolder::release
T * release()
Definition: DummyThreads.hh:49
Portability.hh
threading::ScopedLock
boost::mutex::scoped_lock ScopedLock
Dummy type 'int' defintion of ScopedLock;.
Definition: BoostThreads.hh:30
threading::ThreadLocalDataHolder::_data
T * _data
Definition: DummyThreads.hh:60
threading::ThreadLocalDataHolder::data_type
T data_type
Definition: DummyThreads.hh:34
threading::ThreadLocalDataHolder::operator*
T & operator*() const
Definition: DummyThreads.hh:47
threading::Mutex
boost::mutex Mutex
Dummy type 'int' for Mutex.
Definition: BoostThreads.hh:27
threading::getThreadId
static std::string getThreadId()
Return an identifier for the current thread.
Definition: BoostThreads.hh:22
threading::ThreadLocalDataHolder::get
T * get() const
Definition: DummyThreads.hh:42
threading::ThreadLocalDataHolder::reset
void reset(T *p=NULL)
Definition: DummyThreads.hh:56
threading::ThreadLocalDataHolder::~ThreadLocalDataHolder
~ThreadLocalDataHolder()
Definition: DummyThreads.hh:37
LOG4CPP_NS_BEGIN
#define LOG4CPP_NS_BEGIN
Definition: Portability.hh:49
LOG4CPP_NS_END
#define LOG4CPP_NS_END
Definition: Portability.hh:50
threading::ThreadLocalDataHolder::ThreadLocalDataHolder
ThreadLocalDataHolder()
Definition: DummyThreads.hh:36
threading
Definition: BoostThreads.hh:21
threading::ThreadLocalDataHolder::operator->
T * operator->() const
Definition: DummyThreads.hh:46


rc_genicam_api
Author(s): Heiko Hirschmueller
autogenerated on Wed Dec 4 2024 03:10:11