MRPT logo

mrpt::utils::safe_ptr_basic< T > Struct Template Reference

A wrapper class for pointers that can be safely copied with "=" operator without problems. More...

#include <mrpt/utils/safe_pointers.h>

Inheritance diagram for mrpt::utils::safe_ptr_basic< T >:

mrpt::utils::safe_ptr< T >

List of all members.

Public Member Functions

 safe_ptr_basic ()
 safe_ptr_basic (const safe_ptr_basic< T > &o)
 safe_ptr_basic (const T *p)
safe_ptr_basic< T > & operator= (T *p)
safe_ptr_basic< T > & operator= (const safe_ptr_basic< T > &o)
virtual ~safe_ptr_basic ()
bool operator== (const T *o) const
bool operator== (const safe_ptr_basic< T > &o) const
bool operator!= (const T *o) const
bool operator!= (const safe_ptr_basic< T > &o) const
T *& get ()
const T * get () const
T *& operator-> ()
const T * operator-> () const

Protected Attributes

T * ptr


Detailed Description

template<class T>
struct mrpt::utils::safe_ptr_basic< T >

A wrapper class for pointers that can be safely copied with "=" operator without problems.

This class does not keep any reference count nor automatically destroy the pointed data.

See also:
CReferencedMemBlock, safe_ptr, non_copiable_ptr, copiable_NULL_ptr

Definition at line 46 of file safe_pointers.h.


Constructor & Destructor Documentation

template<class T >
mrpt::utils::safe_ptr_basic< T >::safe_ptr_basic (  )  [inline]

Definition at line 52 of file safe_pointers.h.

template<class T >
mrpt::utils::safe_ptr_basic< T >::safe_ptr_basic ( const safe_ptr_basic< T > &  o  )  [inline]

Definition at line 53 of file safe_pointers.h.

template<class T >
mrpt::utils::safe_ptr_basic< T >::safe_ptr_basic ( const T *  p  )  [inline]

Definition at line 54 of file safe_pointers.h.

template<class T >
virtual mrpt::utils::safe_ptr_basic< T >::~safe_ptr_basic (  )  [inline, virtual]

Definition at line 63 of file safe_pointers.h.


Member Function Documentation

template<class T >
const T* mrpt::utils::safe_ptr_basic< T >::get (  )  const [inline]

Definition at line 72 of file safe_pointers.h.

References mrpt::utils::safe_ptr_basic< T >::ptr.

template<class T >
T*& mrpt::utils::safe_ptr_basic< T >::get (  )  [inline]

Definition at line 71 of file safe_pointers.h.

References mrpt::utils::safe_ptr_basic< T >::ptr.

template<class T >
bool mrpt::utils::safe_ptr_basic< T >::operator!= ( const safe_ptr_basic< T > &  o  )  const [inline]

Definition at line 69 of file safe_pointers.h.

References mrpt::utils::safe_ptr_basic< T >::ptr.

template<class T >
bool mrpt::utils::safe_ptr_basic< T >::operator!= ( const T *  o  )  const [inline]

Definition at line 68 of file safe_pointers.h.

References mrpt::utils::safe_ptr_basic< T >::ptr.

template<class T >
const T* mrpt::utils::safe_ptr_basic< T >::operator-> ( void   )  const [inline]

Definition at line 75 of file safe_pointers.h.

References ASSERT_, and mrpt::utils::safe_ptr_basic< T >::ptr.

template<class T >
T*& mrpt::utils::safe_ptr_basic< T >::operator-> ( void   )  [inline]

Definition at line 74 of file safe_pointers.h.

References ASSERT_, and mrpt::utils::safe_ptr_basic< T >::ptr.

template<class T >
safe_ptr_basic<T>& mrpt::utils::safe_ptr_basic< T >::operator= ( const safe_ptr_basic< T > &  o  )  [inline]

Definition at line 57 of file safe_pointers.h.

References mrpt::utils::safe_ptr_basic< T >::ptr.

template<class T >
safe_ptr_basic<T>& mrpt::utils::safe_ptr_basic< T >::operator= ( T *  p  )  [inline]

Definition at line 55 of file safe_pointers.h.

References mrpt::utils::safe_ptr_basic< T >::ptr.

template<class T >
bool mrpt::utils::safe_ptr_basic< T >::operator== ( const safe_ptr_basic< T > &  o  )  const [inline]

Definition at line 66 of file safe_pointers.h.

References mrpt::utils::safe_ptr_basic< T >::ptr.

template<class T >
bool mrpt::utils::safe_ptr_basic< T >::operator== ( const T *  o  )  const [inline]

Definition at line 65 of file safe_pointers.h.

References mrpt::utils::safe_ptr_basic< T >::ptr.


Member Data Documentation

template<class T >
T* mrpt::utils::safe_ptr_basic< T >::ptr [protected]




Page generated by Doxygen 1.5.7.1 for MRPT 0.6.5 SVN: at Mon Feb 23 13:24:51 EST 2009