Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

OS::SIPtr< T > Class Template Reference

#include <SIPtr.h>

Collaboration diagram for OS::SIPtr< T >:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 SIPtr ()
 SIPtr (T *pointee)
 SIPtr (const SIPtr &other)
SIPtroperator= (const SIPtr &other)
SIPtroperator= (T *pointee)
 ~SIPtr ()
T & operator * () const
T * operator-> () const
bool isNull () const
bool operator== (T *pointee)
bool operator!= (T *pointee)
bool operator== (const SIPtr &other)
bool operator!= (const SIPtr &other)

Detailed Description

template<class T>
class OS::SIPtr< T >

A generic smart pointer that allows several references without copies that handles automatic deletion. It is a kind of smart pointer that allows an unlimited number of pointer to the same object with auto-deletion when all pointers are forgotten. The deletion takes place immediately when no pointer refers to the object any more. It does not run in independent cycles like a garbage collector. If the user wants an actual copy, an explicit copy of the object must be made through the copy constructor or a specialized clone function.


Constructor & Destructor Documentation

template<class T>
OS::SIPtr< T >::SIPtr  )  [inline]
 

template<class T>
OS::SIPtr< T >::SIPtr T *  pointee  )  [inline, explicit]
 

template<class T>
OS::SIPtr< T >::SIPtr const SIPtr< T > &  other  )  [inline]
 

template<class T>
OS::SIPtr< T >::~SIPtr  )  [inline]
 


Member Function Documentation

template<class T>
bool OS::SIPtr< T >::isNull  )  const [inline]
 

template<class T>
T& OS::SIPtr< T >::operator *  )  const [inline]
 

template<class T>
bool OS::SIPtr< T >::operator!= const SIPtr< T > &  other  )  [inline]
 

template<class T>
bool OS::SIPtr< T >::operator!= T *  pointee  )  [inline]
 

template<class T>
T* OS::SIPtr< T >::operator->  )  const [inline]
 

template<class T>
SIPtr& OS::SIPtr< T >::operator= T *  pointee  )  [inline]
 

template<class T>
SIPtr& OS::SIPtr< T >::operator= const SIPtr< T > &  other  )  [inline]
 

template<class T>
bool OS::SIPtr< T >::operator== const SIPtr< T > &  other  )  [inline]
 

template<class T>
bool OS::SIPtr< T >::operator== T *  pointee  )  [inline]
 


The documentation for this class was generated from the following file:
Generated on Sun Mar 6 13:36:23 2005 for Komssys by doxygen 1.3.8