Main MRPT website > C++ reference
MRPT logo

stlplus::smart_ptr_base< T, C > Class Template Reference

#include <mrpt/otherlibs/stlplus/smart_ptr.hpp>

List of all members.

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

Detailed Description

template<typename T, typename C>
class stlplus::smart_ptr_base< T, C >

Definition at line 104 of file smart_ptr.hpp.


Member Typedef Documentation

template<typename T, typename C>
typedef const T& stlplus::smart_ptr_base< T, C >::const_reference

Definition at line 112 of file smart_ptr.hpp.

template<typename T, typename C>
typedef T& stlplus::smart_ptr_base< T, C >::reference

Definition at line 111 of file smart_ptr.hpp.

template<typename T, typename C>
typedef C stlplus::smart_ptr_base< T, C >::value_copy

Definition at line 113 of file smart_ptr.hpp.

template<typename T, typename C>
typedef T stlplus::smart_ptr_base< T, C >::value_type

Definition at line 110 of file smart_ptr.hpp.


Constructor & Destructor Documentation

template<typename T , typename C >
stlplus::smart_ptr_base< T, C >::smart_ptr_base ( void   )  [inline]

Definition at line 167 of file smart_ptr.tpp.

template<typename T, typename C >
stlplus::smart_ptr_base< T, C >::smart_ptr_base ( const T &  data  )  throw (illegal_copy) [inline, explicit]

Definition at line 174 of file smart_ptr.tpp.

template<typename T, typename C >
stlplus::smart_ptr_base< T, C >::smart_ptr_base ( T *  data  )  [inline, explicit]

Definition at line 184 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T, typename C>
stlplus::smart_ptr_base< T, C >::smart_ptr_base ( const smart_ptr_base< T, C > &  r  )  [inline, explicit]

Definition at line 192 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T , typename C >
stlplus::smart_ptr_base< T, C >::~smart_ptr_base ( void   )  [inline]

Definition at line 201 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.


Member Function Documentation

template<typename T, typename C>
void stlplus::smart_ptr_base< T, C >::alias ( const smart_ptr_base< T, C > &  r  )  [inline]
template<typename T , typename C >
unsigned stlplus::smart_ptr_base< T, C >::alias_count ( void   )  const [inline]

Definition at line 330 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T, typename C>
bool stlplus::smart_ptr_base< T, C >::aliases ( const smart_ptr_base< T, C > &  r  )  const [inline]

Definition at line 324 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

Referenced by std::operator!=(), and std::operator==().

template<typename T , typename C >
void stlplus::smart_ptr_base< T, C >::clear ( void   )  [inline]

Definition at line 336 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T , typename C >
void stlplus::smart_ptr_base< T, C >::clear_unique ( void   )  [inline]
template<typename T, typename C>
void stlplus::smart_ptr_base< T, C >::copy ( const smart_ptr_base< T, C > &  data  )  throw (illegal_copy) [inline]

Definition at line 369 of file smart_ptr.tpp.

template<typename T , typename C >
void * stlplus::smart_ptr_base< T, C >::handle ( void   )  const [inline]

Definition at line 379 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T , typename C >
void stlplus::smart_ptr_base< T, C >::make_alias ( void *  handle  )  [inline]
template<typename T , typename C >
void stlplus::smart_ptr_base< T, C >::make_unique ( void   )  throw (illegal_copy) [inline]
template<typename T , typename C >
bool stlplus::smart_ptr_base< T, C >::null ( void   )  const [inline]

Definition at line 211 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T , typename C >
stlplus::smart_ptr_base< T, C >::operator bool ( void   )  const [inline]

Definition at line 229 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T , typename C >
bool stlplus::smart_ptr_base< T, C >::operator! ( void   )  const [inline]

Definition at line 223 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T , typename C >
const T & stlplus::smart_ptr_base< T, C >::operator* ( void   )  const throw (null_dereference) [inline]

Definition at line 245 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T , typename C >
T & stlplus::smart_ptr_base< T, C >::operator* ( void   )  throw (null_dereference) [inline]

Definition at line 238 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T , typename C >
const T * stlplus::smart_ptr_base< T, C >::operator-> ( void   )  const throw (null_dereference) [inline]

Definition at line 259 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T , typename C >
T * stlplus::smart_ptr_base< T, C >::operator-> ( void   )  throw (null_dereference) [inline]

Definition at line 252 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T , typename C >
const T * stlplus::smart_ptr_base< T, C >::pointer ( void   )  const [inline]

Definition at line 301 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T , typename C >
T * stlplus::smart_ptr_base< T, C >::pointer ( void   )  [inline]

Definition at line 295 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T , typename C >
bool stlplus::smart_ptr_base< T, C >::present ( void   )  const [inline]

Definition at line 217 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T, typename C >
void stlplus::smart_ptr_base< T, C >::set ( T *  data = 0  )  [inline]

Definition at line 289 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T, typename C >
void stlplus::smart_ptr_base< T, C >::set_value ( const T &  data  )  throw (illegal_copy) [inline]
template<typename T , typename C >
const T & stlplus::smart_ptr_base< T, C >::value ( void   )  const throw (null_dereference) [inline]

Definition at line 282 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.

template<typename T , typename C >
T & stlplus::smart_ptr_base< T, C >::value ( void   )  throw (null_dereference) [inline]

Definition at line 275 of file smart_ptr.tpp.

References stlplus::smart_ptr_base< T, C >::m_holder.


Member Data Documentation

template<typename T, typename C>
smart_ptr_holder<T>* stlplus::smart_ptr_base< T, C >::m_holder [protected]
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines



Page generated by Doxygen 1.6.1 for MRPT 0.9.0 SVN: at Mon Jun 7 06:47:58 UTC 2010