#include <mrpt/otherlibs/stlplus/smart_ptr.hpp>
Public Types | |
typedef T | value_type |
typedef T & | reference |
typedef const T & | const_reference |
typedef C | value_copy |
Public Member Functions | |
smart_ptr_base (void) | |
smart_ptr_base (const T &data) throw (illegal_copy) | |
smart_ptr_base (T *data) | |
smart_ptr_base (const smart_ptr_base< T, C > &r) | |
~smart_ptr_base (void) | |
operator bool (void) const | |
bool | operator! (void) const |
bool | present (void) const |
bool | null (void) const |
T & | operator* (void) throw (null_dereference) |
const T & | operator* (void) const throw (null_dereference) |
T * | operator-> (void) throw (null_dereference) |
const T * | operator-> (void) const throw (null_dereference) |
void | set_value (const T &data) throw (illegal_copy) |
T & | value (void) throw (null_dereference) |
const T & | value (void) const throw (null_dereference) |
void | set (T *data=0) |
T * | pointer (void) |
const T * | pointer (void) const |
void | alias (const smart_ptr_base< T, C > &) |
bool | aliases (const smart_ptr_base< T, C > &) const |
unsigned | alias_count (void) const |
void | clear (void) |
void | clear_unique (void) |
void | make_unique (void) throw (illegal_copy) |
void | copy (const smart_ptr_base< T, C > &) throw (illegal_copy) |
void * | handle (void) const |
void | make_alias (void *handle) |
Protected Attributes | |
smart_ptr_holder< T > * | m_holder |
Definition at line 104 of file smart_ptr.hpp.
typedef const T& stlplus::smart_ptr_base< T, C >::const_reference |
Definition at line 112 of file smart_ptr.hpp.
typedef T& stlplus::smart_ptr_base< T, C >::reference |
Definition at line 111 of file smart_ptr.hpp.
typedef C stlplus::smart_ptr_base< T, C >::value_copy |
Definition at line 113 of file smart_ptr.hpp.
typedef T stlplus::smart_ptr_base< T, C >::value_type |
Definition at line 110 of file smart_ptr.hpp.
stlplus::smart_ptr_base< T, C >::smart_ptr_base | ( | void | ) | [inline] |
Definition at line 164 of file smart_ptr.tpp.
stlplus::smart_ptr_base< T, C >::smart_ptr_base | ( | const T & | data | ) | throw (illegal_copy) [inline, explicit] |
Definition at line 171 of file smart_ptr.tpp.
stlplus::smart_ptr_base< T, C >::smart_ptr_base | ( | T * | data | ) | [inline, explicit] |
stlplus::smart_ptr_base< T, C >::smart_ptr_base | ( | const smart_ptr_base< T, C > & | r | ) | [inline, explicit] |
stlplus::smart_ptr_base< T, C >::~smart_ptr_base | ( | void | ) | [inline] |
void stlplus::smart_ptr_base< T, C >::alias | ( | const smart_ptr_base< T, C > & | r | ) | [inline] |
Definition at line 308 of file smart_ptr.tpp.
References stlplus::smart_ptr_base< T, C >::m_holder, and stlplus::smart_ptr_base< T, C >::make_alias().
Referenced by stlplus::smart_ptr_nocopy< T >::operator=(), stlplus::smart_ptr_clone< CSerializable >::operator=(), and stlplus::smart_ptr< vector_byte >::operator=().
unsigned stlplus::smart_ptr_base< T, C >::alias_count | ( | void | ) | const [inline] |
bool stlplus::smart_ptr_base< T, C >::aliases | ( | const smart_ptr_base< T, C > & | r | ) | const [inline] |
Definition at line 321 of file smart_ptr.tpp.
References stlplus::smart_ptr_base< T, C >::m_holder.
Referenced by std::operator!=(), and std::operator==().
void stlplus::smart_ptr_base< T, C >::clear | ( | void | ) | [inline] |
void stlplus::smart_ptr_base< T, C >::clear_unique | ( | void | ) | [inline] |
Definition at line 339 of file smart_ptr.tpp.
References stlplus::smart_ptr_base< T, C >::m_holder.
Referenced by mrpt::utils::metaprogramming::ObjectClearUnique::operator()().
void stlplus::smart_ptr_base< T, C >::copy | ( | const smart_ptr_base< T, C > & | data | ) | throw (illegal_copy) [inline] |
Definition at line 366 of file smart_ptr.tpp.
void * stlplus::smart_ptr_base< T, C >::handle | ( | void | ) | const [inline] |
void stlplus::smart_ptr_base< T, C >::make_alias | ( | void * | handle | ) | [inline] |
Definition at line 382 of file smart_ptr.tpp.
References stlplus::smart_ptr_base< T, C >::m_holder.
Referenced by stlplus::smart_ptr_base< T, C >::alias().
void stlplus::smart_ptr_base< T, C >::make_unique | ( | void | ) | throw (illegal_copy) [inline] |
Definition at line 352 of file smart_ptr.tpp.
References stlplus::smart_ptr_base< T, C >::m_holder, stlplus::smart_ptr_holder< T >::pointer(), and stlplus::smart_ptr_holder< T >::value().
Referenced by mrpt::utils::metaprogramming::ObjectMakeUnique::operator()().
bool stlplus::smart_ptr_base< T, C >::null | ( | void | ) | const [inline] |
stlplus::smart_ptr_base< T, C >::operator bool | ( | void | ) | const [inline] |
bool stlplus::smart_ptr_base< T, C >::operator! | ( | void | ) | const [inline] |
const T & stlplus::smart_ptr_base< T, C >::operator* | ( | void | ) | const throw (null_dereference) [inline] |
T & stlplus::smart_ptr_base< T, C >::operator* | ( | void | ) | throw (null_dereference) [inline] |
const T * stlplus::smart_ptr_base< T, C >::operator-> | ( | void | ) | const throw (null_dereference) [inline] |
T * stlplus::smart_ptr_base< T, C >::operator-> | ( | void | ) | throw (null_dereference) [inline] |
const T * stlplus::smart_ptr_base< T, C >::pointer | ( | void | ) | const [inline] |
T * stlplus::smart_ptr_base< T, C >::pointer | ( | void | ) | [inline] |
bool stlplus::smart_ptr_base< T, C >::present | ( | void | ) | const [inline] |
void stlplus::smart_ptr_base< T, C >::set | ( | T * | data = 0 |
) | [inline] |
void stlplus::smart_ptr_base< T, C >::set_value | ( | const T & | data | ) | throw (illegal_copy) [inline] |
Definition at line 266 of file smart_ptr.tpp.
Referenced by stlplus::smart_ptr_nocopy< T >::operator=(), stlplus::smart_ptr_clone< CSerializable >::operator=(), and stlplus::smart_ptr< vector_byte >::operator=().
const T & stlplus::smart_ptr_base< T, C >::value | ( | void | ) | const throw (null_dereference) [inline] |
T & stlplus::smart_ptr_base< T, C >::value | ( | void | ) | throw (null_dereference) [inline] |
smart_ptr_holder<T>* stlplus::smart_ptr_base< T, C >::m_holder [protected] |
Definition at line 215 of file smart_ptr.hpp.
Referenced by stlplus::smart_ptr_base< T, C >::alias(), stlplus::smart_ptr_base< T, C >::alias_count(), stlplus::smart_ptr_base< T, C >::aliases(), stlplus::smart_ptr_base< T, C >::clear(), stlplus::smart_ptr_base< T, C >::clear_unique(), stlplus::smart_ptr_base< T, C >::handle(), stlplus::smart_ptr_base< T, C >::make_alias(), stlplus::smart_ptr_base< T, C >::make_unique(), stlplus::smart_ptr_base< T, C >::null(), stlplus::smart_ptr_base< T, C >::operator bool(), stlplus::smart_ptr_base< T, C >::operator!(), stlplus::smart_ptr_base< T, C >::operator*(), stlplus::smart_ptr_base< T, C >::operator->(), stlplus::smart_ptr_base< T, C >::pointer(), stlplus::smart_ptr_base< T, C >::present(), stlplus::smart_ptr_base< T, C >::set(), stlplus::smart_ptr_base< T, C >::smart_ptr_base(), stlplus::smart_ptr_base< T, C >::value(), and stlplus::smart_ptr_base< T, C >::~smart_ptr_base().
Page generated by Doxygen 1.5.9 for MRPT 0.7.1 SVN: at Mon Aug 17 22:20:53 EDT 2009 |