Main MRPT website > C++ reference
MRPT logo
Public Member Functions | Protected Attributes
mrpt::utils::non_copiable_ptr Struct Reference

Detailed Description

A wrapper class for pointers that can NOT be copied with "=" operator, raising an exception at runtime if a copy is attempted.

See also:
CReferencedMemBlock, safe_ptr, non_copiable_ptr, copiable_NULL_ptr

#include <mrpt/utils/safe_pointers.h>

Inheritance diagram for mrpt::utils::non_copiable_ptr:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 non_copiable_ptr ()
 non_copiable_ptr (const non_copiable_ptr< T > &o)
 non_copiable_ptr (const T *p)
non_copiable_ptr< T > & operator= (const T *p)
non_copiable_ptr< T > & operator= (const non_copiable_ptr< T > &o)
virtual ~non_copiable_ptr ()
T & operator* ()
const T & operator* () const
T & operator[] (const size_t &i)
const T & operator[] (const size_t &i) const
void set (const T *p)
 This method can change the pointer, since the change is made explicitly, not through copy operators transparent to the user.
bool operator== (const T *o) const
bool operator== (const non_copiable_ptr_basic< T > &o) const
bool operator!= (const T *o) const
bool operator!= (const non_copiable_ptr_basic< T > &o) const
T *& get ()
const T * get () const
T ** getPtrToPtr ()
T *& operator-> ()
const T * operator-> () const

Protected Attributes

T * ptr

Constructor & Destructor Documentation

mrpt::utils::non_copiable_ptr::non_copiable_ptr ( ) [inline]

Definition at line 145 of file safe_pointers.h.

mrpt::utils::non_copiable_ptr::non_copiable_ptr ( const non_copiable_ptr< T > &  o) [inline]

Definition at line 146 of file safe_pointers.h.

mrpt::utils::non_copiable_ptr::non_copiable_ptr ( const T *  p) [inline]

Definition at line 147 of file safe_pointers.h.

virtual mrpt::utils::non_copiable_ptr::~non_copiable_ptr ( ) [inline, virtual]

Definition at line 154 of file safe_pointers.h.


Member Function Documentation

T*& mrpt::utils::non_copiable_ptr_basic::get ( ) [inline, inherited]

Definition at line 129 of file safe_pointers.h.

const T* mrpt::utils::non_copiable_ptr_basic::get ( ) const [inline, inherited]

Definition at line 130 of file safe_pointers.h.

T** mrpt::utils::non_copiable_ptr_basic::getPtrToPtr ( ) [inline, inherited]

Definition at line 132 of file safe_pointers.h.

bool mrpt::utils::non_copiable_ptr_basic::operator!= ( const T *  o) const [inline, inherited]

Definition at line 126 of file safe_pointers.h.

bool mrpt::utils::non_copiable_ptr_basic::operator!= ( const non_copiable_ptr_basic< T > &  o) const [inline, inherited]

Definition at line 127 of file safe_pointers.h.

T& mrpt::utils::non_copiable_ptr::operator* ( void  ) [inline]

Definition at line 156 of file safe_pointers.h.

const T& mrpt::utils::non_copiable_ptr::operator* ( void  ) const [inline]

Definition at line 157 of file safe_pointers.h.

T*& mrpt::utils::non_copiable_ptr_basic::operator-> ( void  ) [inline, inherited]

Definition at line 134 of file safe_pointers.h.

const T* mrpt::utils::non_copiable_ptr_basic::operator-> ( void  ) const [inline, inherited]

Definition at line 135 of file safe_pointers.h.

non_copiable_ptr<T>& mrpt::utils::non_copiable_ptr::operator= ( const T *  p) [inline]

Definition at line 149 of file safe_pointers.h.

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

Definition at line 151 of file safe_pointers.h.

bool mrpt::utils::non_copiable_ptr_basic::operator== ( const T *  o) const [inline, inherited]

Definition at line 123 of file safe_pointers.h.

bool mrpt::utils::non_copiable_ptr_basic::operator== ( const non_copiable_ptr_basic< T > &  o) const [inline, inherited]

Definition at line 124 of file safe_pointers.h.

T& mrpt::utils::non_copiable_ptr::operator[] ( const size_t &  i) [inline]

Definition at line 159 of file safe_pointers.h.

const T& mrpt::utils::non_copiable_ptr::operator[] ( const size_t &  i) const [inline]

Definition at line 160 of file safe_pointers.h.

void mrpt::utils::non_copiable_ptr_basic::set ( const T *  p) [inline, inherited]

This method can change the pointer, since the change is made explicitly, not through copy operators transparent to the user.

Definition at line 119 of file safe_pointers.h.


Member Data Documentation

T* mrpt::utils::non_copiable_ptr_basic::ptr [protected, inherited]

Definition at line 107 of file safe_pointers.h.




Page generated by Doxygen 1.7.5 for MRPT 0.9.5 SVN: at Thu Oct 13 21:25:36 UTC 2011