ITK  5.0.0
Insight Segmentation and Registration Toolkit
Classes | Public Types | 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 41 of file itkImageAlgorithm.h.

Classes

struct  PixelSize
 
struct  StaticCast
 

Public Types

using FalseType = std::false_type
 
using TrueType = std::true_type
 
template<typename InputImageType , typename OutputImageType >
static void Copy (const InputImageType *inImage, OutputImageType *outImage, const typename InputImageType::RegionType &inRegion, const typename OutputImageType::RegionType &outRegion)
 
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 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())
 
template<typename TType >
static TType * CopyHelper (const TType *first, const TType *last, TType *result)
 

Member Typedef Documentation

using itk::ImageAlgorithm::FalseType = std::false_type

Definition at line 45 of file itkImageAlgorithm.h.

using itk::ImageAlgorithm::TrueType = std::true_type

Definition at line 44 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 70 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 173 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: