BLOCXX_NAMESPACE::Reference< T > Class Template Reference

#include <Reference.hpp>

Inheritance diagram for BLOCXX_NAMESPACE::Reference< T >:
BLOCXX_NAMESPACE::ReferenceBase

List of all members.

Public Types

typedef T element_type

Public Member Functions

 Reference ()
 Reference (T *ptr)
 Reference (const Reference< T > &arg)
template<class U >
 Reference (const Reference< U > &arg)
 ~Reference ()
Reference< T > & operator= (const Reference< T > &arg)
Reference< T > & operator= (T *newObj)
void swap (Reference< T > &arg)
T * operator-> () const
T & operator* () const
T * getPtr () const
bool isNull () const BLOCXX_DEPRECATED
template<class U >
Reference< U > cast_to () const
template<class U >
void useRefCountOf (const Reference< U > &)

Private Member Functions

void decRef ()

Private Attributes

T *volatile m_pObj

Friends

class Reference

Detailed Description

template<class T>
class BLOCXX_NAMESPACE::Reference< T >

Definition at line 51 of file Reference.hpp.


Member Typedef Documentation

template<class T>
typedef T BLOCXX_NAMESPACE::Reference< T >::element_type

Definition at line 59 of file Reference.hpp.


Constructor & Destructor Documentation

template<class T>
BLOCXX_NAMESPACE::Reference< T >::Reference (  ) 
template<class T>
BLOCXX_NAMESPACE::Reference< T >::Reference ( T *  ptr  )  [inline, explicit]

Definition at line 100 of file Reference.hpp.

template<class T>
BLOCXX_NAMESPACE::Reference< T >::Reference ( const Reference< T > &  arg  )  [inline]

Definition at line 106 of file Reference.hpp.

template<class T >
template<class U >
BLOCXX_NAMESPACE::Reference< T >::Reference ( const Reference< U > &  arg  )  [inline]

Definition at line 113 of file Reference.hpp.

template<class T >
BLOCXX_NAMESPACE::Reference< T >::~Reference (  )  [inline]

Definition at line 120 of file Reference.hpp.

References BLOCXX_NAMESPACE::Reference< T >::decRef().


Member Function Documentation

template<class T >
template<class U >
Reference< U > BLOCXX_NAMESPACE::Reference< T >::cast_to (  )  const [inline]
template<class T >
void BLOCXX_NAMESPACE::Reference< T >::decRef (  )  [inline, private]
template<class T >
T * BLOCXX_NAMESPACE::Reference< T >::getPtr (  )  const [inline]
template<class T >
bool BLOCXX_NAMESPACE::Reference< T >::isNull (  )  const [inline]

Definition at line 187 of file Reference.hpp.

References BLOCXX_NAMESPACE::Reference< T >::m_pObj.

template<class T >
T & BLOCXX_NAMESPACE::Reference< T >::operator* (  )  const [inline]

Definition at line 170 of file Reference.hpp.

References BLOCXX_NAMESPACE::Reference< T >::m_pObj.

template<class T >
T * BLOCXX_NAMESPACE::Reference< T >::operator-> (  )  const [inline]

Definition at line 159 of file Reference.hpp.

References BLOCXX_NAMESPACE::Reference< T >::m_pObj.

template<class T>
Reference< T > & BLOCXX_NAMESPACE::Reference< T >::operator= ( T *  newObj  )  [inline]

Definition at line 145 of file Reference.hpp.

References BLOCXX_NAMESPACE::Reference< T >::swap().

template<class T>
Reference< T > & BLOCXX_NAMESPACE::Reference< T >::operator= ( const Reference< T > &  arg  )  [inline]

Definition at line 138 of file Reference.hpp.

References BLOCXX_NAMESPACE::Reference< T >::swap().

template<class T>
void BLOCXX_NAMESPACE::Reference< T >::swap ( Reference< T > &  arg  )  [inline]
template<class T >
template<class U >
void BLOCXX_NAMESPACE::Reference< T >::useRefCountOf ( const Reference< U > &  arg  )  [inline]

Definition at line 209 of file Reference.hpp.

Referenced by BLOCXX_NAMESPACE::Reference< T >::cast_to().


Friends And Related Function Documentation

template<class T>
BLOCXX_NAMESPACE::Reference< T >::Reference [friend]

Definition at line 86 of file Reference.hpp.


Member Data Documentation

template<class T>
T* volatile BLOCXX_NAMESPACE::Reference< T >::m_pObj [private]

The documentation for this class was generated from the following file:
Generated on Mon Jul 5 19:59:48 2010 for blocxx by  doxygen 1.6.3