ITK  4.1.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
itk::DataObjectDecorator< T > Class Template Reference

#include <itkDataObjectDecorator.h>

+ Inheritance diagram for itk::DataObjectDecorator< T >:
+ Collaboration diagram for itk::DataObjectDecorator< T >:

List of all members.

Public Types

typedef T::ConstPointer ComponentConstPointer
typedef T ComponentType
typedef SmartPointer< const SelfConstPointer
typedef SmartPointer< SelfPointer
typedef DataObjectDecorator Self
typedef DataObject Superclass

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual const T * Get () const
virtual const char * GetNameOfClass () const
virtual void Set (const T *val)

Static Public Member Functions

static Pointer New ()

Protected Member Functions

 DataObjectDecorator ()
virtual void PrintSelf (std::ostream &os, Indent indent) const
 ~DataObjectDecorator ()

Private Member Functions

 DataObjectDecorator (const Self &)
void operator= (const Self &)

Private Attributes

ComponentConstPointer m_Component

Detailed Description

template<class T>
class itk::DataObjectDecorator< T >

Decorates any subclass of itkObject with a DataObject API.

DataObjectDecorator decorates an instance of a subclass of itkObject with a DataObject API. This allows any itkObject to be encapsulated into a DataObject that can be passed down the pipeline. To decorate simple types (float, int, std::vector) see SimpleDataObjectDecorator.

The decorator provides two methods Set() and Get() to access the decorated object (referred internally as the component).

Note that when an instance of DataObjectDecorator is created, the component is initialized with its default constructor (in this case a null pointer).

DataObjectDecorator can decorate any subclass of itkObject. Two other decorators are provided. SimpleDataObjectDecorator can encapsulate simple types (float, int, std::vector). AutoPointerDataObjectDecorator will decorate any pointer type (for objects other than subclasses of itkObject) and manage the memory deallocationg of the component.

See also:
SimpleDataObjectDecorator
AutoPointerDataObjectDecorator

Definition at line 66 of file itkDataObjectDecorator.h.


Member Typedef Documentation

template<class T >
typedef T::ConstPointer itk::DataObjectDecorator< T >::ComponentConstPointer

Definition at line 77 of file itkDataObjectDecorator.h.

template<class T >
typedef T itk::DataObjectDecorator< T >::ComponentType

Typedef for the component type (object being decorated)

Definition at line 76 of file itkDataObjectDecorator.h.

template<class T >
typedef SmartPointer< const Self > itk::DataObjectDecorator< T >::ConstPointer

Reimplemented from itk::DataObject.

Definition at line 73 of file itkDataObjectDecorator.h.

template<class T >
typedef SmartPointer< Self > itk::DataObjectDecorator< T >::Pointer

Reimplemented from itk::DataObject.

Definition at line 72 of file itkDataObjectDecorator.h.

template<class T >
typedef DataObjectDecorator itk::DataObjectDecorator< T >::Self

Standard typedefs.

Reimplemented from itk::DataObject.

Definition at line 70 of file itkDataObjectDecorator.h.

template<class T >
typedef DataObject itk::DataObjectDecorator< T >::Superclass

Reimplemented from itk::DataObject.

Definition at line 71 of file itkDataObjectDecorator.h.


Constructor & Destructor Documentation

template<class T >
itk::DataObjectDecorator< T >::DataObjectDecorator ( ) [protected]
template<class T >
itk::DataObjectDecorator< T >::~DataObjectDecorator ( ) [protected]
template<class T >
itk::DataObjectDecorator< T >::DataObjectDecorator ( const Self ) [private]

Member Function Documentation

template<class T >
virtual::itk::LightObject::Pointer itk::DataObjectDecorator< T >::CreateAnother ( void  ) const [virtual]

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::Object.

template<class T >
virtual const T* itk::DataObjectDecorator< T >::Get ( ) const [virtual]

Get the contained object

template<class T >
virtual const char* itk::DataObjectDecorator< T >::GetNameOfClass ( ) const [virtual]

Run-time type information (and related methods).

Reimplemented from itk::DataObject.

template<class T >
static Pointer itk::DataObjectDecorator< T >::New ( ) [static]

Method for creation through the object factory.

Reimplemented from itk::Object.

template<class T >
void itk::DataObjectDecorator< T >::operator= ( const Self ) [private]

Reimplemented from itk::DataObject.

template<class T >
virtual void itk::DataObjectDecorator< T >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]

Method for grafting the content of one data object into another one. This method is intended to be overloaded by derived classes. Each one of them should use dynamic_casting in order to verify that the grafted object is actually of the same type as the class on which the Graft() method was invoked.

Reimplemented from itk::DataObject.

template<class T >
virtual void itk::DataObjectDecorator< T >::Set ( const T *  val) [virtual]

Set the contained object


Member Data Documentation

template<class T >
ComponentConstPointer itk::DataObjectDecorator< T >::m_Component [private]

Definition at line 101 of file itkDataObjectDecorator.h.


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