Main MRPT website > C++ reference for MRPT 1.9.9
List of all members | Public Member Functions | Protected Attributes
mrpt::utils::safe_ptr_basic< T > Struct Template Reference

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 27 of file safe_pointers.h.

#include <mrpt/utils/safe_pointers.h>

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

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
 

Constructor & Destructor Documentation

◆ safe_ptr_basic() [1/3]

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

Definition at line 33 of file safe_pointers.h.

◆ safe_ptr_basic() [2/3]

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

Definition at line 34 of file safe_pointers.h.

◆ safe_ptr_basic() [3/3]

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

Definition at line 35 of file safe_pointers.h.

◆ ~safe_ptr_basic()

template<class T>
virtual mrpt::utils::safe_ptr_basic< T >::~safe_ptr_basic ( )
inlinevirtual

Definition at line 48 of file safe_pointers.h.

Member Function Documentation

◆ get() [1/2]

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

Definition at line 53 of file safe_pointers.h.

◆ get() [2/2]

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

Definition at line 54 of file safe_pointers.h.

◆ operator!=() [1/2]

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

Definition at line 51 of file safe_pointers.h.

◆ operator!=() [2/2]

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

Definition at line 52 of file safe_pointers.h.

◆ operator->() [1/2]

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

Definition at line 55 of file safe_pointers.h.

◆ operator->() [2/2]

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

Definition at line 60 of file safe_pointers.h.

◆ operator=() [1/2]

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

Definition at line 36 of file safe_pointers.h.

◆ operator=() [2/2]

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

Definition at line 42 of file safe_pointers.h.

◆ operator==() [1/2]

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

Definition at line 49 of file safe_pointers.h.

◆ operator==() [2/2]

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

Definition at line 50 of file safe_pointers.h.

Member Data Documentation

◆ ptr

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



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: ae4571287 Thu Nov 23 00:06:53 2017 +0100 at dom oct 27 23:51:55 CET 2019