ITK  4.9.0
Insight Segmentation and Registration Toolkit
Classes | Public Types | Static Public Member Functions | Static Private Member Functions | List of all members
itk::ImageAlgorithm Class Reference

#include <itkImageAlgorithm.h>

Detailed Description

A container of static functions which can operate on Images with Iterators.

These methods are modeled after the STL algorithms. They may use special optimization techniques to implement enhanced versions of the methods.

Definition at line 53 of file itkImageAlgorithm.h.

Classes

struct  PixelSize
 
struct  StaticCast
 

Public Types

typedef itk::FalseType FalseType
 
typedef itk::TrueType TrueType
 

Static Public Member Functions

template<typename InputImageType , typename OutputImageType >
static OutputImageType::RegionType EnlargeRegionOverBox (const typename InputImageType::RegionType &inputRegion, const InputImageType *inputImage, const OutputImageType *outputImage)
 
template<typename InputImageType , typename OutputImageType >
static void Copy (const InputImageType *inImage, OutputImageType *outImage, const typename InputImageType::RegionType &inRegion, const typename OutputImageType::RegionType &outRegion)
 

Static Private Member Functions

template<typename TType >
static TType * CopyHelper (const TType *first, const TType *last, TType *result)
 
template<typename InputImageType , typename OutputImageType >
static void DispatchedCopy (const InputImageType *inImage, OutputImageType *outImage, const typename InputImageType::RegionType &inRegion, const typename OutputImageType::RegionType &outRegion, TrueType isSpecialized)
 
template<typename InputImageType , typename OutputImageType >
static void DispatchedCopy (const InputImageType *inImage, OutputImageType *outImage, const typename InputImageType::RegionType &inRegion, const typename OutputImageType::RegionType &outRegion, FalseType isSpecialized=FalseType())
 

Member Typedef Documentation

typedef itk::FalseType itk::ImageAlgorithm::FalseType

Definition at line 61 of file itkImageAlgorithm.h.

typedef itk::TrueType itk::ImageAlgorithm::TrueType

Definition at line 60 of file itkImageAlgorithm.h.

Member Function Documentation

template<typename InputImageType , typename OutputImageType >
static void itk::ImageAlgorithm::Copy ( const InputImageType *  inImage,
OutputImageType *  outImage,
const typename InputImageType::RegionType &  inRegion,
const typename OutputImageType::RegionType &  outRegion 
)
inlinestatic

This generic function copies a region from one image to another. It may perform optimizations on the copy for efficiency.

This method performs the equivalent to the following:

* itk::ImageRegionIterator<TOutputImage> ot( outImage, outRegion );
*
* while( !it.IsAtEnd() )
* {
* ot.Set( static_cast< typename TInputImage::PixelType >( it.Get() ) );
* ++ot;
* ++it;
* }
*
Note
: It is important not to explicitly pass the template arguments to this method as it may not result in an optimized method being called.

Definition at line 86 of file itkImageAlgorithm.h.

References DispatchedCopy().

template<typename TType >
static TType* itk::ImageAlgorithm::CopyHelper ( const TType *  first,
const TType *  last,
TType *  result 
)
inlinestaticprivate

Function to dispatch to std::copy or std::transform.

Definition at line 202 of file itkImageAlgorithm.h.

template<typename InputImageType , typename OutputImageType >
static void itk::ImageAlgorithm::DispatchedCopy ( const InputImageType *  inImage,
OutputImageType *  outImage,
const typename InputImageType::RegionType &  inRegion,
const typename OutputImageType::RegionType &  outRegion,
TrueType  isSpecialized 
)
staticprivate

This is an optimized method which requires the input and output images to be the same, and the pixel being POD (Plain Old Data).

Referenced by Copy().

template<typename InputImageType , typename OutputImageType >
static void itk::ImageAlgorithm::DispatchedCopy ( const InputImageType *  inImage,
OutputImageType *  outImage,
const typename InputImageType::RegionType &  inRegion,
const typename OutputImageType::RegionType &  outRegion,
FalseType  isSpecialized = FalseType() 
)
staticprivate

this is the reference image iterator implementation

template<typename InputImageType , typename OutputImageType >
static OutputImageType::RegionType itk::ImageAlgorithm::EnlargeRegionOverBox ( const typename InputImageType::RegionType &  inputRegion,
const InputImageType *  inputImage,
const OutputImageType *  outputImage 
)
static

Sets the output region to the smallest region of the output image that fully contains the physical space covered by the input region of the input image.


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