|
Gaudi Framework, version v22r2 |
| Home | Generated: Tue May 10 2011 |
Basic implementation for the object cleaner functor used by TransientFastContainer when returning a recycled object. More...
#include <GaudiKernel/TransientFastContainer.h>


Public Member Functions | |
| T * | operator() (T *obj) const |
| Get a pointer to an object of type T, clean the content of the object (by calling the placement destructor and constructor) and returns the same pointer. | |
| T * | operator() (T *obj, const T &rhs) const |
| Get a pointer to an object of type T, clean the content of the object (by calling the placement destructor), copy the content of the provided object and returns the same pointer. | |
| T * | destruct (T *obj) const |
| Call the destructor of the object before passing back its pointer. | |
Basic implementation for the object cleaner functor used by TransientFastContainer when returning a recycled object.
Definition at line 43 of file TransientFastContainer.h.
| T* DefaultObjectCleaner< T >::destruct | ( | T * | obj ) | const [inline] |
Call the destructor of the object before passing back its pointer.
Definition at line 58 of file TransientFastContainer.h.
{
obj->T::~T(); // call the destructor without deallocating memory
return obj; // just return the pointer to the non-initialized chunk
}
| T* DefaultObjectCleaner< T >::operator() | ( | T * | obj ) | const [inline] |
Get a pointer to an object of type T, clean the content of the object (by calling the placement destructor and constructor) and returns the same pointer.
Definition at line 46 of file TransientFastContainer.h.
{
obj->T::~T(); // call the destructor without deallocating memory
return new(obj) T(); // call the constructor on the memory
}
| T* DefaultObjectCleaner< T >::operator() | ( | T * | obj, |
| const T & | rhs | ||
| ) | const [inline] |
Get a pointer to an object of type T, clean the content of the object (by calling the placement destructor), copy the content of the provided object and returns the same pointer.
Definition at line 53 of file TransientFastContainer.h.
{
obj->T::~T(); // call the destructor without deallocating memory
return new(obj) T(rhs); // call the copy constructor on the memory
}