ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Private Member Functions | Private Attributes
itk::VTKImageImport< TOutputImage > Class Template Reference

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

#include <itkVTKImageImport.h>

Inheritance diagram for itk::VTKImageImport< TOutputImage >:
Collaboration diagram for itk::VTKImageImport< TOutputImage >:

List of all members.

Public Types

typedef OutputImageType::Pointer OutputImagePointer
typedef TOutputImage OutputImageType
typedef OutputImageType::IndexType OutputIndexType
typedef OutputImageType::PixelType OutputPixelType
typedef OutputImageType::RegionType OutputRegionType
typedef OutputImageType::SizeType OutputSizeType
typedef SmartPointer< SelfPointer
typedef VTKImageImport Self
typedef ImageSource< TOutputImage > Superclass
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 ::itk::LightObject::Pointer CreateAnother (void) const
virtual const char * GetNameOfClass () const
virtual void SetUpdateInformationCallback (UpdateInformationCallbackType _arg)
virtual
UpdateInformationCallbackType 
GetUpdateInformationCallback () const
virtual void SetPipelineModifiedCallback (PipelineModifiedCallbackType _arg)
virtual
PipelineModifiedCallbackType 
GetPipelineModifiedCallback () const
virtual void SetWholeExtentCallback (WholeExtentCallbackType _arg)
virtual WholeExtentCallbackType GetWholeExtentCallback () const
virtual void SetSpacingCallback (SpacingCallbackType _arg)
virtual SpacingCallbackType GetSpacingCallback () const
virtual void SetFloatSpacingCallback (FloatSpacingCallbackType _arg)
virtual FloatSpacingCallbackType GetFloatSpacingCallback () const
void SetSpacingCallback (FloatSpacingCallbackType f)
virtual void SetOriginCallback (OriginCallbackType _arg)
virtual OriginCallbackType GetOriginCallback () const
virtual void SetFloatOriginCallback (FloatOriginCallbackType _arg)
virtual FloatOriginCallbackType GetFloatOriginCallback () const
void SetOriginCallback (FloatOriginCallbackType f)
virtual void SetScalarTypeCallback (ScalarTypeCallbackType _arg)
virtual ScalarTypeCallbackType GetScalarTypeCallback () const
virtual void SetNumberOfComponentsCallback (NumberOfComponentsCallbackType _arg)
virtual
NumberOfComponentsCallbackType 
GetNumberOfComponentsCallback () const
virtual void SetPropagateUpdateExtentCallback (PropagateUpdateExtentCallbackType _arg)
virtual
PropagateUpdateExtentCallbackType 
GetPropagateUpdateExtentCallback () const
virtual void SetUpdateDataCallback (UpdateDataCallbackType _arg)
virtual UpdateDataCallbackType GetUpdateDataCallback () const
virtual void SetDataExtentCallback (DataExtentCallbackType _arg)
virtual DataExtentCallbackType GetDataExtentCallback () const
virtual void SetBufferPointerCallback (BufferPointerCallbackType _arg)
virtual BufferPointerCallbackType GetBufferPointerCallback () const

Static Public Member Functions

static Pointer New ()

Static Public Attributes

static const unsigned int OutputImageDimension = OutputImageType::ImageDimension

Protected Member Functions

virtual void GenerateData ()
virtual void GenerateOutputInformation ()
virtual void PropagateRequestedRegion (DataObject *)
virtual void UpdateOutputInformation ()

Private Member Functions

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

Private Attributes

BufferPointerCallbackType m_BufferPointerCallback
void * m_CallbackUserData
DataExtentCallbackType m_DataExtentCallback
FloatOriginCallbackType m_FloatOriginCallback
FloatSpacingCallbackType m_FloatSpacingCallback
NumberOfComponentsCallbackType m_NumberOfComponentsCallback
OriginCallbackType m_OriginCallback
PipelineModifiedCallbackType m_PipelineModifiedCallback
PropagateUpdateExtentCallbackType m_PropagateUpdateExtentCallback
ScalarTypeCallbackType m_ScalarTypeCallback
std::string m_ScalarTypeName
SpacingCallbackType m_SpacingCallback
UpdateDataCallbackType m_UpdateDataCallback
UpdateInformationCallbackType m_UpdateInformationCallback
WholeExtentCallbackType m_WholeExtentCallback
 itkSetMacro2 (CallbackUserData, void *)
virtual void * GetCallbackUserData () const
 VTKImageImport ()
 ~VTKImageImport ()
void PrintSelf (std::ostream &os, Indent indent) const

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 56 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 94 of file itkVTKImageImport.h.

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

These are function pointer types for the pipeline connection callbacks.

Definition at line 93 of file itkVTKImageImport.h.

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

Compatibility for VTK older than 4.4.

Definition at line 99 of file itkVTKImageImport.h.

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

Compatibility for VTK older than 4.4.

Definition at line 98 of file itkVTKImageImport.h.

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

These are function pointer types for the pipeline connection callbacks.

Definition at line 90 of file itkVTKImageImport.h.

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

These are function pointer types for the pipeline connection callbacks.

Definition at line 88 of file itkVTKImageImport.h.

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

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 72 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 68 of file itkVTKImageImport.h.

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

Definition at line 75 of file itkVTKImageImport.h.

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

Definition at line 73 of file itkVTKImageImport.h.

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

Definition at line 76 of file itkVTKImageImport.h.

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

Definition at line 74 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 85 of file itkVTKImageImport.h.

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

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 62 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 91 of file itkVTKImageImport.h.

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

These are function pointer types for the pipeline connection callbacks.

Definition at line 89 of file itkVTKImageImport.h.

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

Standard class typedefs.

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 60 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 87 of file itkVTKImageImport.h.

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

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 61 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 92 of file itkVTKImageImport.h.

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

These are function pointer types for the pipeline connection callbacks.

Definition at line 84 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 86 of file itkVTKImageImport.h.


Constructor & Destructor Documentation

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

Specify callback data.

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

Specify callback data.

Definition at line 170 of file itkVTKImageImport.h.

template<typename TOutputImage >
itk::VTKImageImport< TOutputImage >::VTKImageImport ( const Self ) [private]

Member Function Documentation

template<typename TOutputImage >
virtual::itk::LightObject::Pointer itk::VTKImageImport< TOutputImage >::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<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 ( ) const [virtual]

What to do when receiving BufferPointer().

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

Specify callback data.

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

What to do when receiving DataExtent().

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

What to do when receiving SetOrigin().

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

What to do when receiving SetSpacing().

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

Run-time type information (and related methods).

Reimplemented from itk::ImageSource< TOutputImage >.

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

What to do when receiving SetNumberOfComponents().

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

What to do when receiving SetOrigin().

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

What to do when receiving PipelineModified().

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

What to do when receiving PropagateUpdateExtent().

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

What to do when receiving UpdateInformation().

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

What to do when receiving SetSpacing().

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

What to do when receiving UpdateData().

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

What to do when receiving UpdateInformation().

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

What to do when receiving SetWholeExtent().

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

Specify callback data.

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

Method for creation through the object factory.

Reimplemented from itk::Object.

template<typename TOutputImage >
void itk::VTKImageImport< TOutputImage >::operator= ( const Self ) [private]

Reimplemented from itk::ImageSource< TOutputImage >.

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

Specify callback data.

Reimplemented from itk::ProcessObject.

template<typename TOutputImage >
virtual void itk::VTKImageImport< TOutputImage >::PropagateRequestedRegion ( DataObject output) [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 131 of file itkVTKImageImport.h.

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 >
virtual void itk::VTKImageImport< TOutputImage >::SetSpacingCallback ( SpacingCallbackType  _arg) [virtual]

What to do when receiving SetSpacing().

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

What to do when receiving SetSpacing().

Definition at line 122 of file itkVTKImageImport.h.

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.


Member Data Documentation

template<typename TOutputImage >
BufferPointerCallbackType itk::VTKImageImport< TOutputImage >::m_BufferPointerCallback [private]

Definition at line 199 of file itkVTKImageImport.h.

template<typename TOutputImage >
void* itk::VTKImageImport< TOutputImage >::m_CallbackUserData [private]

Definition at line 186 of file itkVTKImageImport.h.

template<typename TOutputImage >
DataExtentCallbackType itk::VTKImageImport< TOutputImage >::m_DataExtentCallback [private]

Definition at line 198 of file itkVTKImageImport.h.

template<typename TOutputImage >
FloatOriginCallbackType itk::VTKImageImport< TOutputImage >::m_FloatOriginCallback [private]

Definition at line 193 of file itkVTKImageImport.h.

template<typename TOutputImage >
FloatSpacingCallbackType itk::VTKImageImport< TOutputImage >::m_FloatSpacingCallback [private]

Definition at line 191 of file itkVTKImageImport.h.

template<typename TOutputImage >
NumberOfComponentsCallbackType itk::VTKImageImport< TOutputImage >::m_NumberOfComponentsCallback [private]

Definition at line 195 of file itkVTKImageImport.h.

template<typename TOutputImage >
OriginCallbackType itk::VTKImageImport< TOutputImage >::m_OriginCallback [private]

Definition at line 192 of file itkVTKImageImport.h.

template<typename TOutputImage >
PipelineModifiedCallbackType itk::VTKImageImport< TOutputImage >::m_PipelineModifiedCallback [private]

Definition at line 188 of file itkVTKImageImport.h.

template<typename TOutputImage >
PropagateUpdateExtentCallbackType itk::VTKImageImport< TOutputImage >::m_PropagateUpdateExtentCallback [private]

Definition at line 196 of file itkVTKImageImport.h.

template<typename TOutputImage >
ScalarTypeCallbackType itk::VTKImageImport< TOutputImage >::m_ScalarTypeCallback [private]

Definition at line 194 of file itkVTKImageImport.h.

template<typename TOutputImage >
std::string itk::VTKImageImport< TOutputImage >::m_ScalarTypeName [private]

Definition at line 201 of file itkVTKImageImport.h.

template<typename TOutputImage >
SpacingCallbackType itk::VTKImageImport< TOutputImage >::m_SpacingCallback [private]

Definition at line 190 of file itkVTKImageImport.h.

template<typename TOutputImage >
UpdateDataCallbackType itk::VTKImageImport< TOutputImage >::m_UpdateDataCallback [private]

Definition at line 197 of file itkVTKImageImport.h.

template<typename TOutputImage >
UpdateInformationCallbackType itk::VTKImageImport< TOutputImage >::m_UpdateInformationCallback [private]

Definition at line 187 of file itkVTKImageImport.h.

template<typename TOutputImage >
WholeExtentCallbackType itk::VTKImageImport< TOutputImage >::m_WholeExtentCallback [private]

Definition at line 189 of file itkVTKImageImport.h.

template<typename TOutputImage >
const unsigned int itk::VTKImageImport< TOutputImage >::OutputImageDimension = OutputImageType::ImageDimension [static]

The output image dimension.

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 80 of file itkVTKImageImport.h.


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