Main MRPT website > C++ reference for MRPT 1.3.2
List of all members | Public Types | Public Member Functions | Protected Attributes
stlplus::smart_ptr< T, COUNTER > Class Template Reference

Detailed Description

template<typename T, typename COUNTER = mrpt::synch::CAtomicCounter>
class stlplus::smart_ptr< T, COUNTER >

Definition at line 228 of file smart_ptr.hpp.

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

Inheritance diagram for stlplus::smart_ptr< T, COUNTER >:
Inheritance graph

Public Types

typedef T value_type
 
typedef T & reference
 
typedef const T & const_reference
 
typedef constructor_copy< T > value_copy
 

Public Member Functions

 smart_ptr (void)
 
 smart_ptr (const T &data)
 
 smart_ptr (T *data)
 
smart_ptr< T > & operator= (const T &data)
 
smart_ptr< T > & operator= (const smart_ptr< T > &r)
 
 ~smart_ptr (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, constructor_copy< T >, COUNTER > &)
 
bool aliases (const smart_ptr_base< T, constructor_copy< T >, COUNTER > &) 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, constructor_copy< T >, COUNTER > &) throw (illegal_copy)
 
void * handle (void) const
 
void make_alias (void *handle)
 

Protected Attributes

smart_ptr_holder< T, COUNTER > * m_holder
 

Member Typedef Documentation

typedef const T& stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::const_reference
inherited

Definition at line 72 of file smart_ptr.hpp.

typedef T& stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::reference
inherited

Definition at line 71 of file smart_ptr.hpp.

typedef constructor_copy< T > stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::value_copy
inherited

Definition at line 73 of file smart_ptr.hpp.

typedef T stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::value_type
inherited

Definition at line 70 of file smart_ptr.hpp.

Constructor & Destructor Documentation

template<typename T, typename COUNTER = mrpt::synch::CAtomicCounter>
stlplus::smart_ptr< T, COUNTER >::smart_ptr ( void  )
inline

Definition at line 231 of file smart_ptr.hpp.

template<typename T, typename COUNTER = mrpt::synch::CAtomicCounter>
stlplus::smart_ptr< T, COUNTER >::smart_ptr ( const T &  data)
inlineexplicit

Definition at line 232 of file smart_ptr.hpp.

template<typename T, typename COUNTER = mrpt::synch::CAtomicCounter>
stlplus::smart_ptr< T, COUNTER >::smart_ptr ( T *  data)
inlineexplicit

Definition at line 233 of file smart_ptr.hpp.

template<typename T, typename COUNTER = mrpt::synch::CAtomicCounter>
stlplus::smart_ptr< T, COUNTER >::~smart_ptr ( void  )
inline

Definition at line 236 of file smart_ptr.hpp.

Member Function Documentation

void stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::alias ( const smart_ptr_base< T, constructor_copy< T > , COUNTER > &  )
inlineinherited
unsigned stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::alias_count ( void  ) const
inlineinherited
bool stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::aliases ( const smart_ptr_base< T, constructor_copy< T > , COUNTER > &  ) const
inlineinherited
void stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::clear ( void  )
inlineinherited
void stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::clear_unique ( void  )
inlineinherited
void stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::copy ( const smart_ptr_base< T, constructor_copy< T > , COUNTER > &  )
throw (illegal_copy
)
inherited
void* stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::handle ( void  ) const
inherited
void stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::make_alias ( void *  handle)
inherited
void stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::make_unique ( void  )
throw (illegal_copy
)
inlineinherited
bool stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::null ( void  ) const
inherited
stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::operator bool ( void  ) const
inherited
bool stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::operator! ( void  ) const
inherited
T& stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::operator* ( void  )
throw (null_dereference
)
inherited
const T& stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::operator* ( void  ) const
throw (null_dereference
)
inherited
T* stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::operator-> ( void  )
throw (null_dereference
)
inherited
const T* stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::operator-> ( void  ) const
throw (null_dereference
)
inherited
template<typename T, typename COUNTER = mrpt::synch::CAtomicCounter>
smart_ptr<T>& stlplus::smart_ptr< T, COUNTER >::operator= ( const T &  data)
inline

Definition at line 234 of file smart_ptr.hpp.

template<typename T, typename COUNTER = mrpt::synch::CAtomicCounter>
smart_ptr<T>& stlplus::smart_ptr< T, COUNTER >::operator= ( const smart_ptr< T > &  r)
inline

Definition at line 235 of file smart_ptr.hpp.

T* stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::pointer ( void  )
inherited
const T* stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::pointer ( void  ) const
inherited
bool stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::present ( void  ) const
inherited
void stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::set ( T *  data = 0)
inherited
void stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::set_value ( const T &  data)
throw (illegal_copy
)
inherited
T& stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::value ( void  )
throw (null_dereference
)
inherited
const T& stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::value ( void  ) const
throw (null_dereference
)
inherited

Member Data Documentation

smart_ptr_holder<T,COUNTER>* stlplus::smart_ptr_base< T, constructor_copy< T > , COUNTER >::m_holder
protectedinherited

Definition at line 175 of file smart_ptr.hpp.




Page generated by Doxygen 1.8.11 for MRPT 1.3.2 SVN:Unversioned directory at Sun May 1 08:45:24 UTC 2016