CIvfPointer< T > Class Template Reference

#include <ivfmath/IvfMathPointer.h>

List of all members.

Public Member Functions

 CIvfPointer (T *object=0)
 CIvfPointer (const CIvfPointer &ivfObject)
virtual ~CIvfPointer ()
 operator T * () const
T & operator * () const
T * operator-> () const
CIvfPointeroperator= (const CIvfPointer &ivfPointer)
CIvfPointeroperator= (T *ivfObject)
bool operator== (T *ivfObject) const
bool operator!= (T *ivfObject) const
bool operator== (const CIvfPointer &ivfPointer) const
bool operator!= (const CIvfPointer &ivfPointer) const
 CIvfPointer (T *object=0)
 CIvfPointer (const CIvfPointer &ivfObject)
virtual ~CIvfPointer ()
 operator T * () const
T & operator * () const
T * operator-> () const
CIvfPointeroperator= (const CIvfPointer &ivfPointer)
CIvfPointeroperator= (T *ivfObject)
bool operator== (T *ivfObject) const
bool operator!= (T *ivfObject) const
bool operator== (const CIvfPointer &ivfPointer) const
bool operator!= (const CIvfPointer &ivfPointer) const


Detailed Description

template<class T>
class CIvfPointer< T >

Smart pointer class

CIvfPointer handles the Ivf++ reference counting scheme of the CIvfBase class. To declare a Ivf++ smart pointer use the IvfSmartPointer() macro. See the following example:

 int main()
 {
    CIvfPointer<CIvfMaterial> material = new CIvfMaterial(); // addReference() called.
    CIvfPointer<CIvfMaterial> material2;
    material2 = material; // addReference() called 
    .
    .
    
    return 0;
 } 
 // material calls deleteReference()
 // material2 calls deleteRefernce() and deletes CIvfMaterial object

Definition at line 176 of file IvfPointer.h.


The documentation for this class was generated from the following files:
Generated on Fri Sep 1 15:36:55 2006 for Interactive Visualisation Framework - Ivf++ by  doxygen 1.4.6-NO