Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::VTKImageImport< TOutputImage > Class Template Reference
[Input and Output Filters]

Connect the end of an VTK pipeline to an ITK image pipeline. More...

#include <itkVTKImageImport.h>

Inheritance diagram for itk::VTKImageImport< TOutputImage >:

Inheritance graph
[legend]
Collaboration diagram for itk::VTKImageImport< TOutputImage >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef VTKImageImport Self
typedef ImageSource< TOutputImage > Superclass
typedef SmartPointer< SelfPointer
typedef TOutputImage OutputImageType
typedef OutputImageType::Pointer OutputImagePointer
typedef OutputImageType::PixelType OutputPixelType
typedef OutputImageType::SizeType OutputSizeType
typedef OutputImageType::IndexType OutputIndexType
typedef OutputImageType::RegionType OutputRegionType
typedef void(* UpdateInformationCallbackType )(void *)
typedef int(* PipelineModifiedCallbackType )(void *)
typedef int *(* WholeExtentCallbackType )(void *)
typedef double *(* SpacingCallbackType )(void *)
typedef double *(* OriginCallbackType )(void *)
typedef const char *(* ScalarTypeCallbackType )(void *)
typedef int(* NumberOfComponentsCallbackType )(void *)
typedef void(* PropagateUpdateExtentCallbackType )(void *, int *)
typedef void(* UpdateDataCallbackType )(void *)
typedef int *(* DataExtentCallbackType )(void *)
typedef void *(* BufferPointerCallbackType )(void *)
typedef float *(* FloatSpacingCallbackType )(void *)
typedef float *(* FloatOriginCallbackType )(void *)

Public Member Functions

virtual const char * GetClassName () const
 itkStaticConstMacro (OutputImageDimension, unsigned int, OutputImageType::ImageDimension)
virtual void SetUpdateInformationCallback (UpdateInformationCallbackType _arg)
virtual UpdateInformationCallbackType GetUpdateInformationCallback ()
virtual void SetPipelineModifiedCallback (PipelineModifiedCallbackType _arg)
virtual PipelineModifiedCallbackType GetPipelineModifiedCallback ()
virtual void SetWholeExtentCallback (WholeExtentCallbackType _arg)
virtual WholeExtentCallbackType GetWholeExtentCallback ()
virtual void SetSpacingCallback (SpacingCallbackType _arg)
virtual SpacingCallbackType GetSpacingCallback ()
virtual void SetFloatSpacingCallback (FloatSpacingCallbackType _arg)
virtual FloatSpacingCallbackType GetFloatSpacingCallback ()
void SetSpacingCallback (FloatSpacingCallbackType f)
virtual void SetOriginCallback (OriginCallbackType _arg)
virtual OriginCallbackType GetOriginCallback ()
virtual void SetFloatOriginCallback (FloatOriginCallbackType _arg)
virtual FloatOriginCallbackType GetFloatOriginCallback ()
void SetOriginCallback (FloatOriginCallbackType f)
virtual void SetScalarTypeCallback (ScalarTypeCallbackType _arg)
virtual ScalarTypeCallbackType GetScalarTypeCallback ()
virtual void SetNumberOfComponentsCallback (NumberOfComponentsCallbackType _arg)
virtual NumberOfComponentsCallbackType GetNumberOfComponentsCallback ()
virtual void SetPropagateUpdateExtentCallback (PropagateUpdateExtentCallbackType _arg)
virtual PropagateUpdateExtentCallbackType GetPropagateUpdateExtentCallback ()
virtual void SetUpdateDataCallback (UpdateDataCallbackType _arg)
virtual UpdateDataCallbackType GetUpdateDataCallback ()
virtual void SetDataExtentCallback (DataExtentCallbackType _arg)
virtual DataExtentCallbackType GetDataExtentCallback ()
virtual void SetBufferPointerCallback (BufferPointerCallbackType _arg)
virtual BufferPointerCallbackType GetBufferPointerCallback ()
 itkSetMacro2 (CallbackUserData, void *)
virtual void * GetCallbackUserData ()

Static Public Member Functions

Pointer New ()

Protected Member Functions

 VTKImageImport ()
 ~VTKImageImport ()
void PrintSelf (std::ostream &os, Indent indent) const
virtual void PropagateRequestedRegion (DataObject *)
virtual void UpdateOutputInformation ()
virtual void GenerateData ()
virtual void GenerateOutputInformation ()

Detailed Description

template<typename TOutputImage>
class itk::VTKImageImport< TOutputImage >

Connect the end of an VTK pipeline to an ITK image pipeline.

VTKImageImport can be used at the beginning of an ITK image pipeline to connect with a VTK pipeline that ends with vtkImageExport. Callbacks provided by VTKImageImport are registered with vtkImageExport to connect the pipeline execution together. Once connected, update requests coming through the ITK pipeline are automatically propagated to the VTK pipeline.

Note that the VTK images are assumed to be of 1, 2, or 3 dimensions. Scalar value types can be one of: float, double, char, unsigned char, short, unsigned short, int, unsigned int, long, unsigned long. The images must have pixel types with one component.

See also:
VTKImageImport

Definition at line 55 of file itkVTKImageImport.h.


Member Typedef Documentation

template<typename TOutputImage>
typedef void*(* itk::VTKImageImport< TOutputImage >::BufferPointerCallbackType)(void *)
 

These are function pointer types for the pipeline connection callbacks. Definition at line 93 of file itkVTKImageImport.h.

Referenced by itk::VTKImageImport< TOutputImage >::SetOriginCallback(), and itk::VTKImageImport< TOutputImage >::~VTKImageImport().

template<typename TOutputImage>
typedef int*(* itk::VTKImageImport< TOutputImage >::DataExtentCallbackType)(void *)
 

These are function pointer types for the pipeline connection callbacks. Definition at line 92 of file itkVTKImageImport.h.

Referenced by itk::VTKImageImport< TOutputImage >::SetOriginCallback(), and itk::VTKImageImport< TOutputImage >::~VTKImageImport().

template<typename TOutputImage>
typedef float*(* itk::VTKImageImport< TOutputImage >::FloatOriginCallbackType)(void *)
 

Compatibility for VTK older than 4.4. Definition at line 98 of file itkVTKImageImport.h.

Referenced by itk::VTKImageImport< TOutputImage >::SetSpacingCallback(), and itk::VTKImageImport< TOutputImage >::~VTKImageImport().

template<typename TOutputImage>
typedef float*(* itk::VTKImageImport< TOutputImage >::FloatSpacingCallbackType)(void *)
 

Compatibility for VTK older than 4.4. Definition at line 97 of file itkVTKImageImport.h.

Referenced by itk::VTKImageImport< TOutputImage >::~VTKImageImport().

template<typename TOutputImage>
typedef int(* itk::VTKImageImport< TOutputImage >::NumberOfComponentsCallbackType)(void *)
 

These are function pointer types for the pipeline connection callbacks. Definition at line 89 of file itkVTKImageImport.h.

Referenced by itk::VTKImageImport< TOutputImage >::SetOriginCallback(), and itk::VTKImageImport< TOutputImage >::~VTKImageImport().

template<typename TOutputImage>
typedef double*(* itk::VTKImageImport< TOutputImage >::OriginCallbackType)(void *)
 

These are function pointer types for the pipeline connection callbacks. Definition at line 87 of file itkVTKImageImport.h.

Referenced by itk::VTKImageImport< TOutputImage >::SetSpacingCallback(), and itk::VTKImageImport< TOutputImage >::~VTKImageImport().

template<typename TOutputImage>
typedef OutputImageType::Pointer itk::VTKImageImport< TOutputImage >::OutputImagePointer
 

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 71 of file itkVTKImageImport.h.

template<typename TOutputImage>
typedef TOutputImage itk::VTKImageImport< TOutputImage >::OutputImageType
 

Convenient typedefs from the output image.

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 70 of file itkVTKImageImport.h.

template<typename TOutputImage>
typedef OutputImageType::IndexType itk::VTKImageImport< TOutputImage >::OutputIndexType
 

Definition at line 74 of file itkVTKImageImport.h.

template<typename TOutputImage>
typedef OutputImageType::PixelType itk::VTKImageImport< TOutputImage >::OutputPixelType
 

Definition at line 72 of file itkVTKImageImport.h.

template<typename TOutputImage>
typedef OutputImageType::RegionType itk::VTKImageImport< TOutputImage >::OutputRegionType
 

Definition at line 75 of file itkVTKImageImport.h.

template<typename TOutputImage>
typedef OutputImageType::SizeType itk::VTKImageImport< TOutputImage >::OutputSizeType
 

Definition at line 73 of file itkVTKImageImport.h.

template<typename TOutputImage>
typedef int(* itk::VTKImageImport< TOutputImage >::PipelineModifiedCallbackType)(void *)
 

These are function pointer types for the pipeline connection callbacks. Definition at line 84 of file itkVTKImageImport.h.

Referenced by itk::VTKImageImport< TOutputImage >::~VTKImageImport().

template<typename TOutputImage>
typedef SmartPointer<Self> itk::VTKImageImport< TOutputImage >::Pointer
 

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 61 of file itkVTKImageImport.h.

template<typename TOutputImage>
typedef void(* itk::VTKImageImport< TOutputImage >::PropagateUpdateExtentCallbackType)(void *, int *)
 

These are function pointer types for the pipeline connection callbacks. Definition at line 90 of file itkVTKImageImport.h.

Referenced by itk::VTKImageImport< TOutputImage >::SetOriginCallback(), and itk::VTKImageImport< TOutputImage >::~VTKImageImport().

template<typename TOutputImage>
typedef const char*(* itk::VTKImageImport< TOutputImage >::ScalarTypeCallbackType)(void *)
 

These are function pointer types for the pipeline connection callbacks. Definition at line 88 of file itkVTKImageImport.h.

Referenced by itk::VTKImageImport< TOutputImage >::~VTKImageImport().

template<typename TOutputImage>
typedef VTKImageImport itk::VTKImageImport< TOutputImage >::Self
 

Standard class typedefs.

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 59 of file itkVTKImageImport.h.

template<typename TOutputImage>
typedef double*(* itk::VTKImageImport< TOutputImage >::SpacingCallbackType)(void *)
 

These are function pointer types for the pipeline connection callbacks. Definition at line 86 of file itkVTKImageImport.h.

Referenced by itk::VTKImageImport< TOutputImage >::~VTKImageImport().

template<typename TOutputImage>
typedef ImageSource<TOutputImage> itk::VTKImageImport< TOutputImage >::Superclass
 

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 60 of file itkVTKImageImport.h.

template<typename TOutputImage>
typedef void(* itk::VTKImageImport< TOutputImage >::UpdateDataCallbackType)(void *)
 

These are function pointer types for the pipeline connection callbacks. Definition at line 91 of file itkVTKImageImport.h.

Referenced by itk::VTKImageImport< TOutputImage >::SetOriginCallback(), and itk::VTKImageImport< TOutputImage >::~VTKImageImport().

template<typename TOutputImage>
typedef void(* itk::VTKImageImport< TOutputImage >::UpdateInformationCallbackType)(void *)
 

These are function pointer types for the pipeline connection callbacks. Definition at line 83 of file itkVTKImageImport.h.

template<typename TOutputImage>
typedef int*(* itk::VTKImageImport< TOutputImage >::WholeExtentCallbackType)(void *)
 

These are function pointer types for the pipeline connection callbacks. Definition at line 85 of file itkVTKImageImport.h.

Referenced by itk::VTKImageImport< TOutputImage >::~VTKImageImport().


Constructor & Destructor Documentation

template<typename TOutputImage>
itk::VTKImageImport< TOutputImage >::VTKImageImport  )  [protected]
 

template<typename TOutputImage>
itk::VTKImageImport< TOutputImage >::~VTKImageImport  )  [inline, protected]
 

Definition at line 171 of file itkVTKImageImport.h.

References itk::VTKImageImport< TOutputImage >::BufferPointerCallbackType, itk::VTKImageImport< TOutputImage >::DataExtentCallbackType, itk::VTKImageImport< TOutputImage >::FloatOriginCallbackType, itk::VTKImageImport< TOutputImage >::FloatSpacingCallbackType, itk::VTKImageImport< TOutputImage >::NumberOfComponentsCallbackType, itk::VTKImageImport< TOutputImage >::OriginCallbackType, itk::VTKImageImport< TOutputImage >::PipelineModifiedCallbackType, itk::VTKImageImport< TOutputImage >::PropagateUpdateExtentCallbackType, itk::VTKImageImport< TOutputImage >::ScalarTypeCallbackType, itk::VTKImageImport< TOutputImage >::SpacingCallbackType, itk::VTKImageImport< TOutputImage >::UpdateDataCallbackType, and itk::VTKImageImport< TOutputImage >::WholeExtentCallbackType.


Member Function Documentation

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::GenerateData  )  [protected, virtual]
 

A version of GenerateData() specific for image processing filters. This implementation will split the processing across multiple threads. The buffer is allocated by this method. Then the BeforeThreadedGenerateData() method is called (if provided). Then, a series of threads are spawned each calling ThreadedGenerateData(). After all the threads have completed processing, the AfterThreadedGenerateData() method is called (if provided). If an image processing filter cannot be threaded, the filter should provide an implementation of GenerateData(). That implementation is responsible for allocating the output buffer. If a filter an be threaded, it should NOT provide a GenerateData() method but should provide a ThreadedGenerateData() instead.

See also:
ThreadedGenerateData()

Reimplemented from itk::ImageSource< TOutputImage >.

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::GenerateOutputInformation  )  [protected, virtual]
 

Generate the information decribing the output data. The default implementation of this method will copy information from the input to the output. A filter may override this method if its output will have different information than its input. For instance, a filter that shrinks an image will need to provide an implementation for this method that changes the spacing of the pixels. Such filters should call their superclass' implementation of this method prior to changing the information values they need (i.e. GenerateOutputInformation() should call Superclass::GenerateOutputInformation() prior to changing the information.

Reimplemented from itk::ProcessObject.

template<typename TOutputImage>
virtual BufferPointerCallbackType itk::VTKImageImport< TOutputImage >::GetBufferPointerCallback  )  [virtual]
 

What to do when receiving BufferPointer().

template<typename TOutputImage>
virtual void* itk::VTKImageImport< TOutputImage >::GetCallbackUserData  )  [virtual]
 

Specify callback data.

template<typename TOutputImage>
virtual const char* itk::VTKImageImport< TOutputImage >::GetClassName  )  const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::ImageSource< TOutputImage >.

template<typename TOutputImage>
virtual DataExtentCallbackType itk::VTKImageImport< TOutputImage >::GetDataExtentCallback  )  [virtual]
 

What to do when receiving DataExtent().

template<typename TOutputImage>
virtual FloatOriginCallbackType itk::VTKImageImport< TOutputImage >::GetFloatOriginCallback  )  [virtual]
 

What to do when receiving SetOrigin().

template<typename TOutputImage>
virtual FloatSpacingCallbackType itk::VTKImageImport< TOutputImage >::GetFloatSpacingCallback  )  [virtual]
 

What to do when receiving SetSpacing().

template<typename TOutputImage>
virtual NumberOfComponentsCallbackType itk::VTKImageImport< TOutputImage >::GetNumberOfComponentsCallback  )  [virtual]
 

What to do when receiving SetNumberOfComponents().

template<typename TOutputImage>
virtual OriginCallbackType itk::VTKImageImport< TOutputImage >::GetOriginCallback  )  [virtual]
 

What to do when receiving SetOrigin().

template<typename TOutputImage>
virtual PipelineModifiedCallbackType itk::VTKImageImport< TOutputImage >::GetPipelineModifiedCallback  )  [virtual]
 

What to do when receiving PipelineModified().

template<typename TOutputImage>
virtual PropagateUpdateExtentCallbackType itk::VTKImageImport< TOutputImage >::GetPropagateUpdateExtentCallback  )  [virtual]
 

What to do when receiving PropagateUpdateExtent().

template<typename TOutputImage>
virtual ScalarTypeCallbackType itk::VTKImageImport< TOutputImage >::GetScalarTypeCallback  )  [virtual]
 

What to do when receiving UpdateInformation().

template<typename TOutputImage>
virtual SpacingCallbackType itk::VTKImageImport< TOutputImage >::GetSpacingCallback  )  [virtual]
 

What to do when receiving SetSpacing().

template<typename TOutputImage>
virtual UpdateDataCallbackType itk::VTKImageImport< TOutputImage >::GetUpdateDataCallback  )  [virtual]
 

What to do when receiving UpdateData().

template<typename TOutputImage>
virtual UpdateInformationCallbackType itk::VTKImageImport< TOutputImage >::GetUpdateInformationCallback  )  [virtual]
 

What to do when receiving UpdateInformation().

template<typename TOutputImage>
virtual WholeExtentCallbackType itk::VTKImageImport< TOutputImage >::GetWholeExtentCallback  )  [virtual]
 

What to do when receiving SetWholeExtent().

template<typename TOutputImage>
itk::VTKImageImport< TOutputImage >::itkSetMacro2 CallbackUserData  ,
void * 
 

Specify callback data.

template<typename TOutputImage>
itk::VTKImageImport< TOutputImage >::itkStaticConstMacro OutputImageDimension  ,
unsigned  int,
OutputImageType::ImageDimension 
 

The output image dimension.

template<typename TOutputImage>
Pointer itk::VTKImageImport< TOutputImage >::New  )  [static]
 

Method for creation through the object factory.

Reimplemented from itk::Object.

template<typename TOutputImage>
void itk::VTKImageImport< TOutputImage >::PrintSelf std::ostream &  os,
Indent  indent
const [protected, virtual]
 

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::ProcessObject.

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::PropagateRequestedRegion DataObject  )  [protected, virtual]
 

Send the requested region information back up the pipeline (to the filters that preceed this one).

Reimplemented from itk::ProcessObject.

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::SetBufferPointerCallback BufferPointerCallbackType  _arg  )  [virtual]
 

What to do when receiving BufferPointer().

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::SetDataExtentCallback DataExtentCallbackType  _arg  )  [virtual]
 

What to do when receiving DataExtent().

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::SetFloatOriginCallback FloatOriginCallbackType  _arg  )  [virtual]
 

What to do when receiving SetOrigin().

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::SetFloatSpacingCallback FloatSpacingCallbackType  _arg  )  [virtual]
 

What to do when receiving SetSpacing().

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::SetNumberOfComponentsCallback NumberOfComponentsCallbackType  _arg  )  [virtual]
 

What to do when receiving SetNumberOfComponents().

template<typename TOutputImage>
void itk::VTKImageImport< TOutputImage >::SetOriginCallback FloatOriginCallbackType  f  )  [inline]
 

What to do when receiving SetOrigin(). Definition at line 130 of file itkVTKImageImport.h.

References itk::VTKImageImport< TOutputImage >::BufferPointerCallbackType, itk::VTKImageImport< TOutputImage >::DataExtentCallbackType, itk::VTKImageImport< TOutputImage >::NumberOfComponentsCallbackType, itk::VTKImageImport< TOutputImage >::PropagateUpdateExtentCallbackType, and itk::VTKImageImport< TOutputImage >::UpdateDataCallbackType.

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::SetOriginCallback OriginCallbackType  _arg  )  [virtual]
 

What to do when receiving SetOrigin().

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::SetPipelineModifiedCallback PipelineModifiedCallbackType  _arg  )  [virtual]
 

What to do when receiving PipelineModified().

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::SetPropagateUpdateExtentCallback PropagateUpdateExtentCallbackType  _arg  )  [virtual]
 

What to do when receiving PropagateUpdateExtent().

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::SetScalarTypeCallback ScalarTypeCallbackType  _arg  )  [virtual]
 

What to do when receiving UpdateInformation().

template<typename TOutputImage>
void itk::VTKImageImport< TOutputImage >::SetSpacingCallback FloatSpacingCallbackType  f  )  [inline]
 

What to do when receiving SetSpacing(). Definition at line 121 of file itkVTKImageImport.h.

References itk::VTKImageImport< TOutputImage >::FloatOriginCallbackType, and itk::VTKImageImport< TOutputImage >::OriginCallbackType.

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::SetSpacingCallback SpacingCallbackType  _arg  )  [virtual]
 

What to do when receiving SetSpacing().

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::SetUpdateDataCallback UpdateDataCallbackType  _arg  )  [virtual]
 

What to do when receiving UpdateData().

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::SetUpdateInformationCallback UpdateInformationCallbackType  _arg  )  [virtual]
 

What to do when receiving UpdateInformation().

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::SetWholeExtentCallback WholeExtentCallbackType  _arg  )  [virtual]
 

What to do when receiving SetWholeExtent().

template<typename TOutputImage>
virtual void itk::VTKImageImport< TOutputImage >::UpdateOutputInformation  )  [protected, virtual]
 

Update the information decribing the output data. This method transverses up the pipeline gathering modified time information. On the way back down the pipeline, this method calls GenerateOutputInformation() to set any necessary information about the output data objects. For instance, a filter that shrinks an image will need to provide an implementation for GenerateOutputInformation() that changes the spacing of the pixels. Such filters should call their superclass' implementation of GenerateOutputInformation prior to changing the information values they need (i.e. GenerateOutputInformation() should call Superclass::GenerateOutputInformation() prior to changing the information.

Reimplemented from itk::ProcessObject.


The documentation for this class was generated from the following file:
Generated at Sun Apr 1 02:58:16 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000