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

Pipeline object to control data streaming for large data processing. More...

#include <itkStreamingImageFilter.h>

Inheritance diagram for itk::StreamingImageFilter< TInputImage, TOutputImage >:
Collaboration diagram for itk::StreamingImageFilter< TInputImage, TOutputImage >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef
Superclass::DataObjectPointer 
DataObjectPointer
typedef InputImageType::PixelType InputImagePixelType
typedef InputImageType::Pointer InputImagePointer
typedef InputImageType::RegionType InputImageRegionType
typedef TInputImage InputImageType
typedef OutputImageType::PixelType OutputImagePixelType
typedef OutputImageType::Pointer OutputImagePointer
typedef OutputImageType::RegionType OutputImageRegionType
typedef TOutputImage OutputImageType
typedef SmartPointer< SelfPointer
typedef SplitterType::Pointer RegionSplitterPointer
typedef StreamingImageFilter Self
typedef ImageRegionSplitter
< itkGetStaticConstMacro(InputImageDimension) > 
SplitterType
typedef ImageToImageFilter
< TInputImage, TOutputImage > 
Superclass

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual const char * GetNameOfClass () const
virtual const unsigned int & GetNumberOfStreamDivisions ()
virtual SplitterTypeGetRegionSplitter ()
virtual void PropagateRequestedRegion (DataObject *output)
virtual void SetNumberOfStreamDivisions (unsigned int _arg)
virtual void SetRegionSplitter (SplitterType *_arg)
 typedef (Concept::SameDimension< InputImageDimension, OutputImageDimension >) SameDimensionCheck
 typedef (Concept::Convertible< InputImagePixelType, OutputImagePixelType >) InputConvertibleToOutputCheck
virtual void UpdateOutputData (DataObject *output)

Static Public Member Functions

static Pointer New ()

Static Public Attributes

static const unsigned int InputImageDimension = InputImageType::ImageDimension
static const unsigned int OutputImageDimension = OutputImageType::ImageDimension

Protected Member Functions

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

Private Member Functions

void operator= (const StreamingImageFilter &)
 StreamingImageFilter (const StreamingImageFilter &)

Private Attributes

unsigned int m_NumberOfStreamDivisions
RegionSplitterPointer m_RegionSplitter

Detailed Description

template<class TInputImage, class TOutputImage>
class itk::StreamingImageFilter< TInputImage, TOutputImage >

Pipeline object to control data streaming for large data processing.

StreamingImageFilter is a pipeline object that allows the user to control how data is pulled through the pipeline. To generate its OutputRequestedRegion, this filter will divide the output into several pieces (controlled by SetNumberOfStreamDivisions), and call the upstream pipeline for each piece, tiling the individual outputs into one large output. This reduces the memory footprint for the application since each filter does not have to process the entire dataset at once. This filter will produce the entire output as one image, but the upstream filters will do their processing in pieces.

Definition at line 44 of file itkStreamingImageFilter.h.


Member Typedef Documentation

template<class TInputImage , class TOutputImage >
typedef SmartPointer< const Self > itk::StreamingImageFilter< TInputImage, TOutputImage >::ConstPointer
template<class TInputImage , class TOutputImage >
typedef Superclass::DataObjectPointer itk::StreamingImageFilter< TInputImage, TOutputImage >::DataObjectPointer

Smart Pointer type to a DataObject.

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 69 of file itkStreamingImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef InputImageType::PixelType itk::StreamingImageFilter< TInputImage, TOutputImage >::InputImagePixelType
template<class TInputImage , class TOutputImage >
typedef InputImageType::Pointer itk::StreamingImageFilter< TInputImage, TOutputImage >::InputImagePointer
template<class TInputImage , class TOutputImage >
typedef InputImageType::RegionType itk::StreamingImageFilter< TInputImage, TOutputImage >::InputImageRegionType
template<class TInputImage , class TOutputImage >
typedef TInputImage itk::StreamingImageFilter< TInputImage, TOutputImage >::InputImageType

Some typedefs for the input and output.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 57 of file itkStreamingImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef OutputImageType::PixelType itk::StreamingImageFilter< TInputImage, TOutputImage >::OutputImagePixelType
template<class TInputImage , class TOutputImage >
typedef OutputImageType::Pointer itk::StreamingImageFilter< TInputImage, TOutputImage >::OutputImagePointer

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 66 of file itkStreamingImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef OutputImageType::RegionType itk::StreamingImageFilter< TInputImage, TOutputImage >::OutputImageRegionType

Superclass typedefs.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 67 of file itkStreamingImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef TOutputImage itk::StreamingImageFilter< TInputImage, TOutputImage >::OutputImageType

Some convenient typedefs.

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 65 of file itkStreamingImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef SmartPointer< Self > itk::StreamingImageFilter< TInputImage, TOutputImage >::Pointer
template<class TInputImage , class TOutputImage >
typedef SplitterType::Pointer itk::StreamingImageFilter< TInputImage, TOutputImage >::RegionSplitterPointer

Definition at line 81 of file itkStreamingImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef StreamingImageFilter itk::StreamingImageFilter< TInputImage, TOutputImage >::Self

Standard class typedefs.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 48 of file itkStreamingImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef ImageRegionSplitter< itkGetStaticConstMacro(InputImageDimension) > itk::StreamingImageFilter< TInputImage, TOutputImage >::SplitterType

SmartPointer to a region splitting object

Definition at line 80 of file itkStreamingImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef ImageToImageFilter< TInputImage, TOutputImage > itk::StreamingImageFilter< TInputImage, TOutputImage >::Superclass

Constructor & Destructor Documentation

template<class TInputImage , class TOutputImage >
itk::StreamingImageFilter< TInputImage, TOutputImage >::StreamingImageFilter ( ) [protected]

End concept checking

template<class TInputImage , class TOutputImage >
itk::StreamingImageFilter< TInputImage, TOutputImage >::~StreamingImageFilter ( ) [protected]

End concept checking

template<class TInputImage , class TOutputImage >
itk::StreamingImageFilter< TInputImage, TOutputImage >::StreamingImageFilter ( const StreamingImageFilter< TInputImage, TOutputImage > &  ) [private]

Member Function Documentation

template<class TInputImage , class TOutputImage >
virtual::itk::LightObject::Pointer itk::StreamingImageFilter< TInputImage, 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<class TInputImage , class TOutputImage >
virtual const char* itk::StreamingImageFilter< TInputImage, TOutputImage >::GetNameOfClass ( ) const [virtual]

Run-time type information (and related methods).

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

template<class TInputImage , class TOutputImage >
virtual const unsigned int& itk::StreamingImageFilter< TInputImage, TOutputImage >::GetNumberOfStreamDivisions ( ) [virtual]

Get the number of pieces to divide the input. The upstream pipeline will be executed this many times.

template<class TInputImage , class TOutputImage >
virtual SplitterType* itk::StreamingImageFilter< TInputImage, TOutputImage >::GetRegionSplitter ( ) [virtual]

Get the helper class for dividing the input into chunks.

template<class TInputImage , class TOutputImage >
static Pointer itk::StreamingImageFilter< TInputImage, TOutputImage >::New ( ) [static]

Method for creation through the object factory.

Reimplemented from itk::Object.

template<class TInputImage , class TOutputImage >
void itk::StreamingImageFilter< TInputImage, TOutputImage >::operator= ( const StreamingImageFilter< TInputImage, TOutputImage > &  ) [private]
template<class TInputImage , class TOutputImage >
void itk::StreamingImageFilter< TInputImage, TOutputImage >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]

End concept checking

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

template<class TInputImage , class TOutputImage >
virtual void itk::StreamingImageFilter< TInputImage, TOutputImage >::PropagateRequestedRegion ( DataObject output) [virtual]

Override PropagateRequestedRegion from ProcessObject Since inside UpdateOutputData we iterate over streaming pieces we don't need to proapage up the pipeline

Reimplemented from itk::ProcessObject.

template<class TInputImage , class TOutputImage >
virtual void itk::StreamingImageFilter< TInputImage, TOutputImage >::SetNumberOfStreamDivisions ( unsigned int  _arg) [virtual]

Set the number of pieces to divide the input. The upstream pipeline will be executed this many times.

template<class TInputImage , class TOutputImage >
virtual void itk::StreamingImageFilter< TInputImage, TOutputImage >::SetRegionSplitter ( SplitterType _arg) [virtual]

Set the helper class for dividing the input into chunks.

template<class TInputImage , class TOutputImage >
itk::StreamingImageFilter< TInputImage, TOutputImage >::typedef ( Concept::SameDimension< InputImageDimension, OutputImageDimension )

Begin concept checking This class requires SameDimensionCheck in the form of ( Concept::SameDimension< InputImageDimension, OutputImageDimension > )

template<class TInputImage , class TOutputImage >
itk::StreamingImageFilter< TInputImage, TOutputImage >::typedef ( Concept::Convertible< InputImagePixelType, OutputImagePixelType )

This class requires InputConvertibleToOutputCheck in the form of ( Concept::Convertible< InputImagePixelType, OutputImagePixelType > )

template<class TInputImage , class TOutputImage >
virtual void itk::StreamingImageFilter< TInputImage, TOutputImage >::UpdateOutputData ( DataObject output) [virtual]

Override UpdateOutputData() from ProcessObject to divide upstream updates into pieces. This filter does not have a GenerateData() or ThreadedGenerateData() method. Instead, all the work is done in UpdateOutputData() since it must update a little, execute a little, update some more, execute some more, etc.

Reimplemented from itk::ProcessObject.


Member Data Documentation

template<class TInputImage , class TOutputImage >
const unsigned int itk::StreamingImageFilter< TInputImage, TOutputImage >::InputImageDimension = InputImageType::ImageDimension [static]

Dimension of input image.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 73 of file itkStreamingImageFilter.h.

template<class TInputImage , class TOutputImage >
unsigned int itk::StreamingImageFilter< TInputImage, TOutputImage >::m_NumberOfStreamDivisions [private]

Definition at line 132 of file itkStreamingImageFilter.h.

template<class TInputImage , class TOutputImage >
RegionSplitterPointer itk::StreamingImageFilter< TInputImage, TOutputImage >::m_RegionSplitter [private]

Definition at line 133 of file itkStreamingImageFilter.h.

template<class TInputImage , class TOutputImage >
const unsigned int itk::StreamingImageFilter< TInputImage, TOutputImage >::OutputImageDimension = OutputImageType::ImageDimension [static]

Dimension of input image.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 75 of file itkStreamingImageFilter.h.


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