Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

log4cpp::threading::ThreadLocalDataHolder Class Template Reference

This class holds Thread local data of type T, i.e. More...

#include <DummyThreads.hh>

Collaboration diagram for log4cpp::threading::ThreadLocalDataHolder:

Collaboration graph
[legend]
List of all members.

Public Types

typedef T data_type
typedef T data_type
typedef T data_type

Public Methods

 ThreadLocalDataHolder ()
 ~ThreadLocalDataHolder ()
T * get () const
T * operator-> () const
T & operator * () const
T * release ()
void reset (T *p=NULL)
 ThreadLocalDataHolder ()
 ~ThreadLocalDataHolder ()
T * get () const
 Obtains the Object held for the current thread. More...

T * operator-> () const
 Obtains the Object held for the current thread. More...

T & operator * () const
 Obtains the Object held for the current thread. More...

T * release ()
 Releases the Object held for the current thread. More...

void reset (T *p=NULL)
 Sets a new Object to be held for the current thread. More...

 ThreadLocalDataHolder ()
 ~ThreadLocalDataHolder ()
T * get () const
 Obtains the Object held for the current thread. More...

T * operator-> () const
 Obtains the Object held for the current thread. More...

T & operator * () const
 Obtains the Object held for the current thread. More...

T * release ()
 Releases the Object held for the current thread. More...

void reset (T *p=NULL)
 Sets a new Object to be held for the current thread. More...

 ThreadLocalDataHolder ()
 ~ThreadLocalDataHolder ()
T * get () const
T * operator-> () const
T & operator * () const
T * release ()
void reset (T *p=NULL)

Static Public Methods

void freeHolder (void *p)

Detailed Description

template<typename T>
class log4cpp::threading::ThreadLocalDataHolder< T >

This class holds Thread local data of type T, i.e.

for each thread a ThreadLocalDataHolder holds 0 or 1 instance of T. The held object must be heap allocated and will be deleted upon termination of the thread to which it belongs.


Member Typedef Documentation

template<typename T>
typedef T log4cpp::threading::ThreadLocalDataHolder::data_type
 

template<typename T>
typedef T log4cpp::threading::ThreadLocalDataHolder::data_type
 

template<typename T>
typedef T log4cpp::threading::ThreadLocalDataHolder::data_type
 


Constructor & Destructor Documentation

template<typename T>
log4cpp::threading::ThreadLocalDataHolder< T >::ThreadLocalDataHolder   [inline]
 

template<typename T>
log4cpp::threading::ThreadLocalDataHolder< T >::~ThreadLocalDataHolder   [inline]
 

template<typename T>
log4cpp::threading::ThreadLocalDataHolder< T >::ThreadLocalDataHolder   [inline]
 

template<typename T>
log4cpp::threading::ThreadLocalDataHolder< T >::~ThreadLocalDataHolder   [inline]
 

template<typename T>
log4cpp::threading::ThreadLocalDataHolder< T >::ThreadLocalDataHolder   [inline]
 

template<typename T>
log4cpp::threading::ThreadLocalDataHolder< T >::~ThreadLocalDataHolder   [inline]
 

template<typename T>
log4cpp::threading::ThreadLocalDataHolder< T >::ThreadLocalDataHolder   [inline]
 

template<typename T>
log4cpp::threading::ThreadLocalDataHolder< T >::~ThreadLocalDataHolder   [inline]
 


Member Function Documentation

template<typename T>
void log4cpp::threading::ThreadLocalDataHolder< T >::freeHolder void *    p [inline, static]
 

template<typename T>
T* log4cpp::threading::ThreadLocalDataHolder< T >::get   const [inline]
 

template<typename T>
T* log4cpp::threading::ThreadLocalDataHolder< T >::get   const [inline]
 

Obtains the Object held for the current thread.

Returns:
a pointer to the held Object or NULL if no Object has been set for the current thread.

template<typename T>
T* log4cpp::threading::ThreadLocalDataHolder< T >::get   const [inline]
 

Obtains the Object held for the current thread.

Returns:
a pointer to the held Object or NULL if no Object has been set for the current thread.

template<typename T>
T* log4cpp::threading::ThreadLocalDataHolder< T >::get   const [inline]
 

template<typename T>
T& log4cpp::threading::ThreadLocalDataHolder< T >::operator *   const [inline]
 

template<typename T>
T& log4cpp::threading::ThreadLocalDataHolder< T >::operator *   const [inline]
 

Obtains the Object held for the current thread.

Precondition:
get() != NULL
Returns:
a reference to the held Object.

template<typename T>
T& log4cpp::threading::ThreadLocalDataHolder< T >::operator *   const [inline]
 

Obtains the Object held for the current thread.

Precondition:
get() != NULL
Returns:
a reference to the held Object.

template<typename T>
T& log4cpp::threading::ThreadLocalDataHolder< T >::operator *   const [inline]
 

template<typename T>
T* log4cpp::threading::ThreadLocalDataHolder< T >::operator->   const [inline]
 

template<typename T>
T* log4cpp::threading::ThreadLocalDataHolder< T >::operator->   const [inline]
 

Obtains the Object held for the current thread.

Initially each thread holds NULL.

Returns:
a pointer to the held Object or NULL if no Object has been set for the current thread.

template<typename T>
T* log4cpp::threading::ThreadLocalDataHolder< T >::operator->   const [inline]
 

Obtains the Object held for the current thread.

Initially each thread holds NULL.

Returns:
a pointer to the held Object or NULL if no Object has been set for the current thread.

template<typename T>
T* log4cpp::threading::ThreadLocalDataHolder< T >::operator->   const [inline]
 

template<typename T>
T* log4cpp::threading::ThreadLocalDataHolder< T >::release   [inline]
 

template<typename T>
T* log4cpp::threading::ThreadLocalDataHolder< T >::release   [inline]
 

Releases the Object held for the current thread.

Postcondition:
get() == NULL
Returns:
a pointer to the Object thas was held for the current thread or NULL if no Object was held.

template<typename T>
T* log4cpp::threading::ThreadLocalDataHolder< T >::release   [inline]
 

Releases the Object held for the current thread.

Postcondition:
get() == NULL
Returns:
a pointer to the Object thas was held for the current thread or NULL if no Object was held.

template<typename T>
T* log4cpp::threading::ThreadLocalDataHolder< T >::release   [inline]
 

template<typename T>
void log4cpp::threading::ThreadLocalDataHolder< T >::reset T *    p = NULL [inline]
 

template<typename T>
void log4cpp::threading::ThreadLocalDataHolder< T >::reset T *    p = NULL [inline]
 

Sets a new Object to be held for the current thread.

A previously set Object will be deleted.

Parameters:
p  the new object to hold.
Postcondition:
get() == p

template<typename T>
void log4cpp::threading::ThreadLocalDataHolder< T >::reset T *    p = NULL [inline]
 

Sets a new Object to be held for the current thread.

A previously set Object will be deleted.

Parameters:
p  the new object to hold.
Postcondition:
get() == p

template<typename T>
void log4cpp::threading::ThreadLocalDataHolder< T >::reset T *    p = NULL [inline]
 


The documentation for this class was generated from the following files:
Generated on Mon Oct 28 23:42:16 2002 for log4cpp by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002