ITK  4.3.0
Insight Segmentation and Registration Toolkit
Classes | Functions
itk::ImageToImageFilterDetail Namespace Reference

Classes

struct  BinaryBooleanDispatch
 Templated class to produce a unique type for a pairing of booleans. More...
 
struct  BinaryIntDispatch
 Templated class to produce a unique type for a pairing of integers. More...
 
struct  BinaryUnsignedIntDispatch
 Templated class to produce a unique type for a pairing of unsigned integers (usually two dimensions). More...
 
struct  BooleanDispatch
 Templated class to produce a unique type "true" and "false". More...
 
struct  DispatchBase
 Base class for a class used to dispatch to dimension specific implementations. More...
 
class  ExtractImageFilterRegionCopier
 A special variation of ImageRegionCopier for when the output image has fewer dimensions than the input image. More...
 
class  ImageRegionCopier
 A Function object used to dispatching to a routine to copy a region (start index and size). More...
 
struct  IntDispatch
 Templated class to produce a unique type for each integer. More...
 
struct  UnsignedIntDispatch
 Templated class to produce a unique type for each unsigned integer (usually a dimension). More...
 

Functions

template<unsigned int T1, unsigned int T2>
void ExtractImageFilterCopyRegion (const typename BinaryUnsignedIntDispatch< T1, T2 >::FirstEqualsSecondType &firstEqualsSecond, ImageRegion< T1 > &destRegion, const ImageRegion< T2 > &srcRegion, const ImageRegion< T1 > &)
 
template<unsigned int T1, unsigned int T2>
void ExtractImageFilterCopyRegion (const typename BinaryUnsignedIntDispatch< T1, T2 >::FirstGreaterThanSecondType &, ImageRegion< T1 > &destRegion, const ImageRegion< T2 > &srcRegion, const ImageRegion< T1 > &totalInputExtractionRegion)
 
template<unsigned int D1, unsigned int D2>
void ImageToImageFilterDefaultCopyRegion (const typename BinaryUnsignedIntDispatch< D1, D2 >::FirstEqualsSecondType &, ImageRegion< D1 > &destRegion, const ImageRegion< D2 > &srcRegion)
 
template<unsigned int D1, unsigned int D2>
void ImageToImageFilterDefaultCopyRegion (const typename BinaryUnsignedIntDispatch< D1, D2 >::FirstLessThanSecondType &, ImageRegion< D1 > &destRegion, const ImageRegion< D2 > &srcRegion)
 
template<unsigned int D1, unsigned int D2>
void ImageToImageFilterDefaultCopyRegion (const typename BinaryUnsignedIntDispatch< D1, D2 >::FirstGreaterThanSecondType &, ImageRegion< D1 > &destRegion, const ImageRegion< D2 > &srcRegion)
 
template<unsigned int D1, unsigned int D2>
bool operator!= (const ImageRegionCopier< D1, D2 > &c1, const ImageRegionCopier< D1, D2 > &c2)
 
template<unsigned int T1, unsigned int T2>
void ExtractImageFilterCopyRegion (const typename BinaryUnsignedIntDispatch< T1, T2 >::FirstLessThanSecondType &firstLessThanSecond, ImageRegion< T1 > &destRegion, const ImageRegion< T2 > &srcRegion, const ImageRegion< T1 > &totalInputExtractionRegion)
 
template<unsigned int D1, unsigned int D2>
std::ostream & operator<< (std::ostream &os, const ImageRegionCopier< D1, D2 > &)
 

Detailed Description

ImageToImageFilterDetail namespace to house implementations of functions that are dependent on dimension. These functions are overloaded based on type unique for each different dimension. These functions cannot be member functions of a class like ImageToImageFilter since explicit instantiation of an ImageToImageFilter would force the instantiation of all versions of these overloaded functions.

Function Documentation

template<unsigned int T1, unsigned int T2>
void itk::ImageToImageFilterDetail::ExtractImageFilterCopyRegion ( const typename BinaryUnsignedIntDispatch< T1, T2 >::FirstEqualsSecondType &  firstEqualsSecond,
ImageRegion< T1 > &  destRegion,
const ImageRegion< T2 > &  srcRegion,
const ImageRegion< T1 > &   
)

Call the base class version: ImageToImageFilterDefaultCopyRegion

Definition at line 41 of file itkExtractImageFilterRegionCopier.h.

template<unsigned int T1, unsigned int T2>
void itk::ImageToImageFilterDetail::ExtractImageFilterCopyRegion ( const typename BinaryUnsignedIntDispatch< T1, T2 >::FirstLessThanSecondType &  firstLessThanSecond,
ImageRegion< T1 > &  destRegion,
const ImageRegion< T2 > &  srcRegion,
const ImageRegion< T1 > &  totalInputExtractionRegion 
)

Call the base class version: ImageToImageFilterDefaultCopyRegion

Definition at line 54 of file itkExtractImageFilterRegionCopier.h.

template<unsigned int T1, unsigned int T2>
void itk::ImageToImageFilterDetail::ExtractImageFilterCopyRegion ( const typename BinaryUnsignedIntDispatch< T1, T2 >::FirstGreaterThanSecondType &  ,
ImageRegion< T1 > &  destRegion,
const ImageRegion< T2 > &  srcRegion,
const ImageRegion< T1 > &  totalInputExtractionRegion 
)

Copy an image region (start index and size) for the case where the source region has a lesser dimension than the destination region. This version is "smart" in that it looks at what dimensions should be collapsed. This information is passed in the parameter totalInputExtractionRegion. Any values within totalInputExtractionRegion.Size that are zero correspond to the dimension to be collapsed.

Note that the use of source and destination reflect where where is information is coming from and going to. When used in the pipeline mechanism, the region requested by the output of a filter is used to define the region required on the input. In this case the output of the filter is the source and the input of the filter is the destination.

Definition at line 82 of file itkExtractImageFilterRegionCopier.h.

References itk::ImageRegion< VImageDimension >::GetIndex(), itk::ImageRegion< VImageDimension >::GetSize(), itk::ImageRegion< VImageDimension >::SetIndex(), and itk::ImageRegion< VImageDimension >::SetSize().

template<unsigned int D1, unsigned int D2>
void itk::ImageToImageFilterDetail::ImageToImageFilterDefaultCopyRegion ( const typename BinaryUnsignedIntDispatch< D1, D2 >::FirstEqualsSecondType &  ,
ImageRegion< D1 > &  destRegion,
const ImageRegion< D2 > &  srcRegion 
)

Copy an image region (start index and size) for the case where the source and destination region are the same dimension. This is a trivial copy of a region. This is an overloaded function. The other versions of this functions handle the case where the destination dimension is greater than the source dimension and the case where the destination dimension is less than the source dimension.

Note that the use of source and destination reflect where where is information is coming from and going to. When used in the pipeline mechanism, the region requested by the output of a filter is used to define the region required on the input. In this case the output of the filter is the source region and the input of the filter is the destination region.

Definition at line 184 of file itkImageToImageFilterDetail.h.

template<unsigned int D1, unsigned int D2>
void itk::ImageToImageFilterDetail::ImageToImageFilterDefaultCopyRegion ( const typename BinaryUnsignedIntDispatch< D1, D2 >::FirstLessThanSecondType &  ,
ImageRegion< D1 > &  destRegion,
const ImageRegion< D2 > &  srcRegion 
)

Copy an image region (start index and size) for the case where the source region has a greater dimension than the destination region. This copies the first portion of the source into destination. This is an overloaded function. The other versions of this functions handle the case where the source dimension is less than the destination dimension and the case where the destination and source are the same dimension.

Note that the use of source and destination reflect where where is information is coming from and going to. When used in the pipeline mechanism, the region requested by the output of a filter is used to define the region required on the input. In this case the output of the filter is the source and the input of the filter is the destination.

Definition at line 209 of file itkImageToImageFilterDetail.h.

References itk::ImageRegion< VImageDimension >::GetIndex(), itk::ImageRegion< VImageDimension >::GetSize(), itk::ImageRegion< VImageDimension >::SetIndex(), and itk::ImageRegion< VImageDimension >::SetSize().

template<unsigned int D1, unsigned int D2>
void itk::ImageToImageFilterDetail::ImageToImageFilterDefaultCopyRegion ( const typename BinaryUnsignedIntDispatch< D1, D2 >::FirstGreaterThanSecondType &  ,
ImageRegion< D1 > &  destRegion,
const ImageRegion< D2 > &  srcRegion 
)

Copy an image region (start index and size) for the case where the source region has a lesser dimension than the destination region. This copies the source into the first part of the destination. This is an overloaded function. The other versions of this functions handle the case where the source dimension is less than the destination dimension and the case where the destination and source are the same dimension.

Note that the use of source and destination reflect where where is information is coming from and going to. When used in the pipeline mechanism, the region requested by the output of a filter is used to define the region required on the input. In this case the output of the filter is the source and the input of the filter is the destination.

Definition at line 251 of file itkImageToImageFilterDetail.h.

References itk::ImageRegion< VImageDimension >::GetIndex(), itk::ImageRegion< VImageDimension >::GetSize(), itk::ImageRegion< VImageDimension >::SetIndex(), and itk::ImageRegion< VImageDimension >::SetSize().

template<unsigned int D1, unsigned int D2>
bool itk::ImageToImageFilterDetail::operator!= ( const ImageRegionCopier< D1, D2 > &  c1,
const ImageRegionCopier< D1, D2 > &  c2 
)

operator!= for ImageRegionCopier objects.

Definition at line 350 of file itkImageToImageFilterDetail.h.

template<unsigned int D1, unsigned int D2>
std::ostream& itk::ImageToImageFilterDetail::operator<< ( std::ostream &  os,
const ImageRegionCopier< D1, D2 > &   
)

Stream operator for ImageRegionCopier objects. Just prints the RTTI typename.

Definition at line 339 of file itkImageToImageFilterDetail.h.