ITK  4.4.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Private Attributes | List of all members
itk::WeakPointer< TObjectType > Class Template Reference

#include <itkWeakPointer.h>

+ Inheritance diagram for itk::WeakPointer< TObjectType >:

Detailed Description

template<class TObjectType>
class itk::WeakPointer< TObjectType >

Implements a weak reference to an object.

WeakPointer implements a weak reference to an object. A natural interface to the class is defined by operator -> (and *) among others. WeakPointer is really nothing more than a standard pointer. It is used to call attention to the fact that it does not adjust the reference count of an object like SmartPointer does. WeakPointer is used internally to Insight to manage (break) reference counting loops. At some point, an object may keep track of how many objects hold weak references to itself. In all cases, however, an outstanding weak reference will not keep an object from destructing.

Definition at line 44 of file itkWeakPointer.h.

Public Types

typedef TObjectType ObjectType
 

Public Member Functions

ObjectTypeGetPointer () const
 
 operator ObjectType * () const
 
template<typename R >
bool operator!= (R r) const
 
ObjectTypeoperator-> () const
 
bool operator< (const WeakPointer &r) const
 
bool operator<= (const WeakPointer &r) const
 
WeakPointeroperator= (const WeakPointer &r)
 
WeakPointeroperator= (ObjectType *r)
 
template<typename R >
bool operator== (R r) const
 
bool operator> (const WeakPointer &r) const
 
bool operator>= (const WeakPointer &r) const
 
 WeakPointer ()
 
 WeakPointer (const WeakPointer< ObjectType > &p)
 
 WeakPointer (ObjectType *p)
 
 ~WeakPointer ()
 
ObjectTypePrint (std::ostream &os) const
 

Private Attributes

ObjectTypem_Pointer
 

Member Typedef Documentation

template<class TObjectType>
typedef TObjectType itk::WeakPointer< TObjectType >::ObjectType

Extract information from template parameter.

Definition at line 48 of file itkWeakPointer.h.

Constructor & Destructor Documentation

template<class TObjectType>
itk::WeakPointer< TObjectType >::WeakPointer ( )
inline

Constructor.

Definition at line 51 of file itkWeakPointer.h.

template<class TObjectType>
itk::WeakPointer< TObjectType >::WeakPointer ( const WeakPointer< ObjectType > &  p)
inline

Copy constructor.

Definition at line 55 of file itkWeakPointer.h.

template<class TObjectType>
itk::WeakPointer< TObjectType >::WeakPointer ( ObjectType p)
inline

Constructor to pointer p.

Definition at line 58 of file itkWeakPointer.h.

template<class TObjectType>
itk::WeakPointer< TObjectType >::~WeakPointer ( )
inline

Destructor.

Definition at line 61 of file itkWeakPointer.h.

Member Function Documentation

template<class TObjectType>
ObjectType* itk::WeakPointer< TObjectType >::GetPointer ( ) const
inline

Access function to pointer.

Definition at line 86 of file itkWeakPointer.h.

Referenced by itk::WeakPointer< OptimizerType >::operator=().

template<class TObjectType>
itk::WeakPointer< TObjectType >::operator ObjectType * ( ) const
inline

Return pointer to object.

Definition at line 69 of file itkWeakPointer.h.

template<class TObjectType>
template<typename R >
bool itk::WeakPointer< TObjectType >::operator!= ( r) const
inline

Definition at line 80 of file itkWeakPointer.h.

template<class TObjectType>
ObjectType* itk::WeakPointer< TObjectType >::operator-> ( ) const
inline

Overload operator ->.

Definition at line 65 of file itkWeakPointer.h.

template<class TObjectType>
bool itk::WeakPointer< TObjectType >::operator< ( const WeakPointer< TObjectType > &  r) const
inline

Comparison of pointers. Less than comparison.

Definition at line 90 of file itkWeakPointer.h.

template<class TObjectType>
bool itk::WeakPointer< TObjectType >::operator<= ( const WeakPointer< TObjectType > &  r) const
inline

Comparison of pointers. Less than or equal to comparison.

Definition at line 98 of file itkWeakPointer.h.

template<class TObjectType>
WeakPointer& itk::WeakPointer< TObjectType >::operator= ( const WeakPointer< TObjectType > &  r)
inline

Overload operator assignment.

Definition at line 107 of file itkWeakPointer.h.

Referenced by itk::WeakPointer< OptimizerType >::operator=().

template<class TObjectType>
WeakPointer& itk::WeakPointer< TObjectType >::operator= ( ObjectType r)
inline

Overload operator assignment.

Definition at line 111 of file itkWeakPointer.h.

template<class TObjectType>
template<typename R >
bool itk::WeakPointer< TObjectType >::operator== ( r) const
inline

Template comparison operators.

Definition at line 74 of file itkWeakPointer.h.

template<class TObjectType>
bool itk::WeakPointer< TObjectType >::operator> ( const WeakPointer< TObjectType > &  r) const
inline

Comparison of pointers. Greater than comparison.

Definition at line 94 of file itkWeakPointer.h.

template<class TObjectType>
bool itk::WeakPointer< TObjectType >::operator>= ( const WeakPointer< TObjectType > &  r) const
inline

Comparison of pointers. Greater than or equal to comparison.

Definition at line 102 of file itkWeakPointer.h.

template<class TObjectType>
ObjectType* itk::WeakPointer< TObjectType >::Print ( std::ostream &  os) const
inline

Function to print object pointed to.

Definition at line 118 of file itkWeakPointer.h.

Referenced by itk::WeakPointer< OptimizerType >::Print().

Member Data Documentation

template<class TObjectType>
ObjectType* itk::WeakPointer< TObjectType >::m_Pointer
private

The documentation for this class was generated from the following file: