ITK
4.1.0
Insight Segmentation and Registration Toolkit
|
#include <itkFFTWComplexToComplexImageFilter.h>
Public Types | |
typedef SmartPointer< const Self > | ConstPointer |
typedef fftw::Proxy< typename PixelType::value_type > | FFTWProxyType |
typedef ImageType::SizeType | ImageSizeType |
typedef TImage | ImageType |
typedef Superclass::InputImageType | InputImageType |
typedef OutputImageType::RegionType | OutputImageRegionType |
typedef Superclass::OutputImageType | OutputImageType |
typedef ImageType::PixelType | PixelType |
typedef SmartPointer< Self > | Pointer |
typedef FFTWComplexToComplexImageFilter | Self |
typedef FFTComplexToComplexImageFilter < TImage > | Superclass |
Public Member Functions | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
virtual bool | FullMatrix () |
virtual const char * | GetNameOfClass () const |
virtual void | SetPlanRigor (const int &value) |
virtual const int & | GetPlanRigor () |
void | SetPlanRigor (const std::string &name) |
Static Public Member Functions | |
static Pointer | New () |
Static Public Attributes | |
static const unsigned int | ImageDimension = ImageType::ImageDimension |
Protected Member Functions | |
virtual void | BeforeThreadedGenerateData () |
FFTWComplexToComplexImageFilter () | |
void | PrintSelf (std::ostream &os, Indent indent) const |
void | ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, ThreadIdType threadId) |
virtual void | UpdateOutputData (DataObject *output) |
virtual | ~FFTWComplexToComplexImageFilter () |
Private Member Functions | |
FFTWComplexToComplexImageFilter (const Self &) | |
void | operator= (const Self &) |
Private Attributes | |
bool | m_CanUseDestructiveAlgorithm |
int | m_PlanRigor |
Implements an API to enable the Fourier transform or the inverse Fourier transform of images with complex valued voxels to be computed using either FFTW from MIT or the FFTW interface in Intel MKL. This filter is multithreaded and supports input images with sizes which are not a power of two.
This code was contributed in the Insight Journal paper: "FFT Complex to Complex filters and helper classes" by Warfield S. http://hdl.handle.net/1926/326 http://www.insight-journal.org/browse/publication/128
Definition at line 56 of file itkFFTWComplexToComplexImageFilter.h.
typedef SmartPointer< const Self > itk::FFTWComplexToComplexImageFilter< TImage >::ConstPointer |
Reimplemented from itk::FFTComplexToComplexImageFilter< TImage >.
Definition at line 63 of file itkFFTWComplexToComplexImageFilter.h.
typedef fftw::Proxy< typename PixelType::value_type > itk::FFTWComplexToComplexImageFilter< TImage >::FFTWProxyType |
Definition at line 79 of file itkFFTWComplexToComplexImageFilter.h.
typedef ImageType::SizeType itk::FFTWComplexToComplexImageFilter< TImage >::ImageSizeType |
Image type typedef support.
Reimplemented from itk::FFTComplexToComplexImageFilter< TImage >.
Definition at line 92 of file itkFFTWComplexToComplexImageFilter.h.
typedef TImage itk::FFTWComplexToComplexImageFilter< TImage >::ImageType |
Standard class typedefs.
Reimplemented from itk::FFTComplexToComplexImageFilter< TImage >.
Definition at line 66 of file itkFFTWComplexToComplexImageFilter.h.
typedef Superclass::InputImageType itk::FFTWComplexToComplexImageFilter< TImage >::InputImageType |
Some convenient typedefs.
Reimplemented from itk::FFTComplexToComplexImageFilter< TImage >.
Definition at line 68 of file itkFFTWComplexToComplexImageFilter.h.
typedef OutputImageType::RegionType itk::FFTWComplexToComplexImageFilter< TImage >::OutputImageRegionType |
Superclass typedefs.
Reimplemented from itk::ImageToImageFilter< TImage, TImage >.
Definition at line 70 of file itkFFTWComplexToComplexImageFilter.h.
typedef Superclass::OutputImageType itk::FFTWComplexToComplexImageFilter< TImage >::OutputImageType |
Some convenient typedefs.
Reimplemented from itk::FFTComplexToComplexImageFilter< TImage >.
Definition at line 69 of file itkFFTWComplexToComplexImageFilter.h.
typedef ImageType::PixelType itk::FFTWComplexToComplexImageFilter< TImage >::PixelType |
Definition at line 67 of file itkFFTWComplexToComplexImageFilter.h.
typedef SmartPointer< Self > itk::FFTWComplexToComplexImageFilter< TImage >::Pointer |
Reimplemented from itk::FFTComplexToComplexImageFilter< TImage >.
Definition at line 62 of file itkFFTWComplexToComplexImageFilter.h.
typedef FFTWComplexToComplexImageFilter itk::FFTWComplexToComplexImageFilter< TImage >::Self |
Standard class typedefs.
Reimplemented from itk::FFTComplexToComplexImageFilter< TImage >.
Definition at line 60 of file itkFFTWComplexToComplexImageFilter.h.
typedef FFTComplexToComplexImageFilter< TImage > itk::FFTWComplexToComplexImageFilter< TImage >::Superclass |
Reimplemented from itk::FFTComplexToComplexImageFilter< TImage >.
Definition at line 61 of file itkFFTWComplexToComplexImageFilter.h.
itk::FFTWComplexToComplexImageFilter< TImage >::FFTWComplexToComplexImageFilter | ( | ) | [inline, protected] |
Definition at line 124 of file itkFFTWComplexToComplexImageFilter.h.
References itk::FFTWGlobalConfiguration::GetPlanRigor().
virtual itk::FFTWComplexToComplexImageFilter< TImage >::~FFTWComplexToComplexImageFilter | ( | ) | [inline, protected, virtual] |
Definition at line 128 of file itkFFTWComplexToComplexImageFilter.h.
itk::FFTWComplexToComplexImageFilter< TImage >::FFTWComplexToComplexImageFilter | ( | const Self & | ) | [private] |
virtual void itk::FFTWComplexToComplexImageFilter< TImage >::BeforeThreadedGenerateData | ( | void | ) | [protected, virtual] |
If an imaging filter needs to perform processing after the buffer has been allocated but before threads are spawned, the filter can can provide an implementation for BeforeThreadedGenerateData(). The execution flow in the default GenerateData() method will be: 1) Allocate the output buffer 2) Call BeforeThreadedGenerateData() 3) Spawn threads, calling ThreadedGenerateData() in each thread. 4) Call AfterThreadedGenerateData() Note that this flow of control is only available if a filter provides a ThreadedGenerateData() method and NOT a GenerateData() method.
Reimplemented from itk::ImageSource< TImage >.
virtual::itk::LightObject::Pointer itk::FFTWComplexToComplexImageFilter< TImage >::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.
virtual bool itk::FFTWComplexToComplexImageFilter< TImage >::FullMatrix | ( | ) | [virtual] |
Implements itk::FFTComplexToComplexImageFilter< TImage >.
virtual const char* itk::FFTWComplexToComplexImageFilter< TImage >::GetNameOfClass | ( | ) | const [virtual] |
Run-time type information (and related methods).
Reimplemented from itk::FFTComplexToComplexImageFilter< TImage >.
virtual const int& itk::FFTWComplexToComplexImageFilter< TImage >::GetPlanRigor | ( | ) | [virtual] |
Set/Get the behavior of wisdom plan creation. The default is provided by FFTWGlobalConfiguration::GetPlanRigor().
The parameter is one of the FFTW planner rigor flags FFTW_ESTIMATE, FFTW_MEASURE, FFTW_PATIENT, FFTW_EXHAUSTIVE provided by FFTWGlobalConfiguration. /sa FFTWGlobalConfiguration
static Pointer itk::FFTWComplexToComplexImageFilter< TImage >::New | ( | ) | [static] |
Method for creation through the object factory.
Reimplemented from itk::FFTComplexToComplexImageFilter< TImage >.
void itk::FFTWComplexToComplexImageFilter< TImage >::operator= | ( | const Self & | ) | [private] |
PushBackInput(), PushFronInput() in the public section force the input to be the type expected by an ImageToImageFilter. However, these methods end of "hiding" the versions from the superclass (ProcessObject) whose arguments are DataObjects. Here, we re-expose the versions from ProcessObject to avoid warnings about hiding methods from the superclass.
Reimplemented from itk::FFTComplexToComplexImageFilter< TImage >.
void itk::FFTWComplexToComplexImageFilter< TImage >::PrintSelf | ( | std::ostream & | os, |
Indent | indent | ||
) | const [protected, virtual] |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::ImageToImageFilter< TImage, TImage >.
virtual void itk::FFTWComplexToComplexImageFilter< TImage >::SetPlanRigor | ( | const int & | value | ) | [inline, virtual] |
Set/Get the behavior of wisdom plan creation. The default is provided by FFTWGlobalConfiguration::GetPlanRigor().
The parameter is one of the FFTW planner rigor flags FFTW_ESTIMATE, FFTW_MEASURE, FFTW_PATIENT, FFTW_EXHAUSTIVE provided by FFTWGlobalConfiguration. /sa FFTWGlobalConfiguration
Definition at line 106 of file itkFFTWComplexToComplexImageFilter.h.
References itk::FFTWGlobalConfiguration::GetPlanRigorName().
void itk::FFTWComplexToComplexImageFilter< TImage >::SetPlanRigor | ( | const std::string & | name | ) | [inline] |
Set/Get the behavior of wisdom plan creation. The default is provided by FFTWGlobalConfiguration::GetPlanRigor().
The parameter is one of the FFTW planner rigor flags FFTW_ESTIMATE, FFTW_MEASURE, FFTW_PATIENT, FFTW_EXHAUSTIVE provided by FFTWGlobalConfiguration. /sa FFTWGlobalConfiguration
Definition at line 117 of file itkFFTWComplexToComplexImageFilter.h.
References itk::FFTWGlobalConfiguration::GetPlanRigorValue().
void itk::FFTWComplexToComplexImageFilter< TImage >::ThreadedGenerateData | ( | const OutputImageRegionType & | outputRegionForThread, |
ThreadIdType | threadId | ||
) | [protected, virtual] |
If an imaging filter can be implemented as a multithreaded algorithm, the filter will provide an implementation of ThreadedGenerateData(). This superclass will automatically split the output image into a number of pieces, spawn multiple threads, and call ThreadedGenerateData() in each thread. Prior to spawning threads, the BeforeThreadedGenerateData() method is called. After all the threads have completed, the AfterThreadedGenerateData() method is called. If an image processing filter cannot support threading, that filter should provide an implementation of the GenerateData() method instead of providing an implementation of ThreadedGenerateData(). If a filter provides a GenerateData() method as its implementation, then the filter is responsible for allocating the output data. If a filter provides a ThreadedGenerateData() method as its implementation, then the output memory will allocated automatically by this superclass. The ThreadedGenerateData() method should only produce the output specified by "outputThreadRegion" parameter. ThreadedGenerateData() cannot write to any other portion of the output image (as this is responsibility of a different thread).
Reimplemented from itk::ImageSource< TImage >.
virtual void itk::FFTWComplexToComplexImageFilter< TImage >::UpdateOutputData | ( | DataObject * | output | ) | [protected, virtual] |
Actually generate new output
Reimplemented from itk::ProcessObject.
const unsigned int itk::FFTWComplexToComplexImageFilter< TImage >::ImageDimension = ImageType::ImageDimension [static] |
Reimplemented from itk::FFTComplexToComplexImageFilter< TImage >.
Definition at line 89 of file itkFFTWComplexToComplexImageFilter.h.
bool itk::FFTWComplexToComplexImageFilter< TImage >::m_CanUseDestructiveAlgorithm [private] |
Definition at line 143 of file itkFFTWComplexToComplexImageFilter.h.
int itk::FFTWComplexToComplexImageFilter< TImage >::m_PlanRigor [private] |
Definition at line 145 of file itkFFTWComplexToComplexImageFilter.h.