Main Page | Directories | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

vtkImageFFT Class Reference

#include <vtkImageFFT.h>

Inheritance diagram for vtkImageFFT:

Inheritance graph
[legend]
Collaboration diagram for vtkImageFFT:

Collaboration graph
[legend]
List of all members.

Detailed Description

Fast Fourier Transform.

vtkImageFFT implements a fast Fourier transform. The input can have real or complex data in any components and data types, but the output is always complex doubles with real values in component0, and imaginary values in component1. The filter is fastest for images that have power of two sizes. The filter uses a butterfly fitlers for each prime factor of the dimension. This makes images with prime number dimensions (i.e. 17x17) much slower to compute. Multi dimensional (i.e volumes) FFT's are decomposed so that each axis executes in series.

Created by:
  • Law, Charles
CVS contributions (if > 5%):
  • Law, Charles (83%)
  • Martin, Ken (9%)
CVS logs (CVSweb):
  • .h (/Imaging/vtkImageFFT.h)
  • .cxx (/Imaging/vtkImageFFT.cxx)
Tests:
vtkImageFFT (Tests)

Definition at line 48 of file vtkImageFFT.h.

Public Types

typedef vtkImageFourierFilter Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
virtual void IterativeExecuteData (vtkImageData *in, vtkImageData *out)
int SplitExtent (int splitExt[6], int startExt[6], int num, int total)

Static Public Member Functions

vtkImageFFTNew ()
int IsTypeOf (const char *type)
vtkImageFFTSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkImageFFT ()
 ~vtkImageFFT ()
void ExecuteInformation (vtkImageData *inData, vtkImageData *outData)
void ComputeInputUpdateExtent (int inExt[6], int outExt[6])
void ExecuteInformation ()
void ThreadedExecute (vtkImageData *inData, vtkImageData *outData, int outExt[6], int threadId)


Member Typedef Documentation

typedef vtkImageFourierFilter vtkImageFFT::Superclass
 

Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.

Reimplemented from vtkImageFourierFilter.

Definition at line 52 of file vtkImageFFT.h.


Constructor & Destructor Documentation

vtkImageFFT::vtkImageFFT  )  [inline, protected]
 

Definition at line 71 of file vtkImageFFT.h.

vtkImageFFT::~vtkImageFFT  )  [inline, protected]
 

Definition at line 72 of file vtkImageFFT.h.


Member Function Documentation

vtkImageFFT* vtkImageFFT::New  )  [static]
 

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkAlgorithm.

virtual const char* vtkImageFFT::GetClassName  )  [virtual]
 

Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.

Reimplemented from vtkImageFourierFilter.

int vtkImageFFT::IsTypeOf const char *  type  )  [static]
 

Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.

Reimplemented from vtkImageFourierFilter.

virtual int vtkImageFFT::IsA const char *  type  )  [virtual]
 

Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.

Reimplemented from vtkImageFourierFilter.

vtkImageFFT* vtkImageFFT::SafeDownCast vtkObject o  )  [static]
 

Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.

Reimplemented from vtkImageFourierFilter.

int vtkImageFFT::SplitExtent int  splitExt[6],
int  startExt[6],
int  num,
int  total
[virtual]
 

Used internally for streaming and threads. Splits output update extent into num pieces. This method needs to be called num times. Results must not overlap for consistent starting extent. Subclass can override this method. This method returns the number of pieces resulting from a successful split. This can be from 1 to "total". If 1 is returned, the extent cannot be split.

Reimplemented from vtkImageToImageFilter.

virtual void vtkImageFFT::IterativeExecuteData vtkImageData in,
vtkImageData out
[inline, virtual]
 

Implements vtkImageIterateFilter.

Definition at line 66 of file vtkImageFFT.h.

References vtkImageToImageFilter::MultiThread().

void vtkImageFFT::ExecuteInformation vtkImageData inData,
vtkImageData outData
[protected, virtual]
 

Reimplemented from vtkImageIterateFilter.

void vtkImageFFT::ComputeInputUpdateExtent int  inExt[6],
int  outExt[6]
[protected, virtual]
 

Reimplemented from vtkImageIterateFilter.

void vtkImageFFT::ExecuteInformation  )  [inline, protected, virtual]
 

Reimplemented from vtkImageIterateFilter.

Definition at line 76 of file vtkImageFFT.h.

References vtkImageIterateFilter::ExecuteInformation().

void vtkImageFFT::ThreadedExecute vtkImageData inData,
vtkImageData outData,
int  outExt[6],
int  threadId
[protected, virtual]
 

If the subclass does not define an Execute method, then the task will be broken up, multiple threads will be spawned, and each thread will call this method. It is public so that the thread functions can call this method.

Reimplemented from vtkImageToImageFilter.


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