CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Types | Public Member Functions | Private Attributes
edm::debugging_allocator< T > Class Template Reference

#include <debugging_allocator.h>

Classes

struct  rebind
 

Public Types

typedef T const * const_pointer
 
typedef T const & const_reference
 
typedef ptrdiff_t difference_type
 
typedef Tpointer
 
typedef Treference
 
typedef size_t size_type
 
typedef T value_type
 

Public Member Functions

pointer address (reference value) const
 
const_pointer address (const_reference value) const
 
pointer allocate (size_type num, void const *hint=0)
 
void construct (pointer p, T const &value)
 
void deallocate (pointer p, size_type num)
 
 debugging_allocator () throw ()
 
 debugging_allocator (debugging_allocator const &) throw ()
 
template<class U >
 debugging_allocator (debugging_allocator< U > const &) throw ()
 
void destroy (pointer p)
 
size_type max_size () const throw ()
 
 ~debugging_allocator () throw ()
 

Private Attributes

char dummy
 

Detailed Description

template<class T>
class edm::debugging_allocator< T >

Definition at line 25 of file debugging_allocator.h.

Member Typedef Documentation

template<class T>
typedef T const* edm::debugging_allocator< T >::const_pointer

Definition at line 31 of file debugging_allocator.h.

template<class T>
typedef T const& edm::debugging_allocator< T >::const_reference

Definition at line 33 of file debugging_allocator.h.

template<class T>
typedef ptrdiff_t edm::debugging_allocator< T >::difference_type

Definition at line 29 of file debugging_allocator.h.

template<class T>
typedef T* edm::debugging_allocator< T >::pointer

Definition at line 30 of file debugging_allocator.h.

template<class T>
typedef T& edm::debugging_allocator< T >::reference

Definition at line 32 of file debugging_allocator.h.

template<class T>
typedef size_t edm::debugging_allocator< T >::size_type

Definition at line 28 of file debugging_allocator.h.

template<class T>
typedef T edm::debugging_allocator< T >::value_type

Definition at line 34 of file debugging_allocator.h.

Constructor & Destructor Documentation

template<class T>
edm::debugging_allocator< T >::debugging_allocator ( )
throw (
)
inline

Definition at line 39 of file debugging_allocator.h.

39 : dummy('x') { }
template<class T>
edm::debugging_allocator< T >::debugging_allocator ( debugging_allocator< T > const &  )
throw (
)
inline

Definition at line 41 of file debugging_allocator.h.

41 : dummy('c') { }
template<class T>
template<class U >
edm::debugging_allocator< T >::debugging_allocator ( debugging_allocator< U > const &  )
throw (
)
inline

Definition at line 43 of file debugging_allocator.h.

43 : dummy('u') { }
template<class T>
edm::debugging_allocator< T >::~debugging_allocator ( )
throw (
)
inline

Definition at line 45 of file debugging_allocator.h.

45 { };

Member Function Documentation

template<class T>
pointer edm::debugging_allocator< T >::address ( reference  value) const
inline

Definition at line 47 of file debugging_allocator.h.

References relativeConstraints::value.

47 {return &value;}
template<class T>
const_pointer edm::debugging_allocator< T >::address ( const_reference  value) const
inline

Definition at line 49 of file debugging_allocator.h.

References relativeConstraints::value.

49 {return &value; }
template<class T>
pointer edm::debugging_allocator< T >::allocate ( size_type  num,
void const *  hint = 0 
)
inline

Definition at line 53 of file debugging_allocator.h.

References cppFunctionSkipper::operator.

54  {
55  // allocate objects with global new
56  return (pointer)(::operator new(num*sizeof(T)));
57  }
long double T
template<class T>
void edm::debugging_allocator< T >::construct ( pointer  p,
T const &  value 
)
inline

Definition at line 59 of file debugging_allocator.h.

59 { new((void*)p)T(value); }
long double T
template<class T>
void edm::debugging_allocator< T >::deallocate ( pointer  p,
size_type  num 
)
inline

Definition at line 63 of file debugging_allocator.h.

References cppFunctionSkipper::operator.

template<class T>
void edm::debugging_allocator< T >::destroy ( pointer  p)
inline

Definition at line 61 of file debugging_allocator.h.

template<class T>
size_type edm::debugging_allocator< T >::max_size ( ) const
throw (
)
inline

Definition at line 51 of file debugging_allocator.h.

References max().

51 { return std::numeric_limits<size_type>::max()/sizeof(T); }
const T & max(const T &a, const T &b)
long double T

Member Data Documentation

template<class T>
char edm::debugging_allocator< T >::dummy
private

Definition at line 66 of file debugging_allocator.h.