Main Page Modules Namespaces C++ Classes Compound List File List Index
TemplateTNL::RefPtr< T > class Reference

TNL::RefPtr< T > Class Template Reference

#include <tnlNetBase.h>

Inheritance diagram for TNL::RefPtr< T >:

TNL::RefObjectRef

Detailed Description

template<class T>
class TNL::RefPtr< T >

Reference counted object template pointer class.

Instances of this template class can be used as pointers to instances of Object and its subclasses. The object will not be deleted until all of the RefPtr instances pointing to it have been destructed.


Public Member Functions

 RefPtr ()
 RefPtr (T *ptr)
 RefPtr (const RefPtr< T > &ref)
RefPtr< T > & operator= (const RefPtr< T > &ref)
RefPtr< T > & operator= (T *ptr)
bool isNull () const
bool isValid () const
T * operator-> () const
T & operator * () const
 operator T * () const
 operator T * ()
T * getPointer ()


Constructor & Destructor Documentation

template<class T>
TNL::RefPtr< T >::RefPtr  )  [inline]
 

template<class T>
TNL::RefPtr< T >::RefPtr T *  ptr  )  [inline]
 

template<class T>
TNL::RefPtr< T >::RefPtr const RefPtr< T > &  ref  )  [inline]
 


Member Function Documentation

template<class T>
RefPtr<T>& TNL::RefPtr< T >::operator= const RefPtr< T > &  ref  )  [inline]
 

template<class T>
RefPtr<T>& TNL::RefPtr< T >::operator= T *  ptr  )  [inline]
 

template<class T>
bool TNL::RefPtr< T >::isNull  )  const [inline]
 

template<class T>
bool TNL::RefPtr< T >::isValid  )  const [inline]
 

template<class T>
T* TNL::RefPtr< T >::operator->  )  const [inline]
 

template<class T>
T& TNL::RefPtr< T >::operator *  )  const [inline]
 

template<class T>
TNL::RefPtr< T >::operator T *  )  const [inline]
 

template<class T>
TNL::RefPtr< T >::operator T *  )  [inline]
 

template<class T>
T* TNL::RefPtr< T >::getPointer  )  [inline]