18#ifndef itkFFTWForward1DFFTImageFilter_h
19#define itkFFTWForward1DFFTImageFilter_h
39template <
typename TInputImage,
40 typename TOutputImage = Image<std::complex<typename TInputImage::PixelType>, TInputImage::ImageDimension>>
64 using PlanArrayType =
typename std::vector<typename FFTW1DProxyType::PlanType>;
96 bool m_PlanComputed{
false };
98 unsigned int m_LastImageSize{ 0 };
109 template <
typename TUnderlying>
111 template <
typename TUnderlying>
118#ifndef ITK_MANUAL_INSTANTIATION
119# include "itkFFTWForward1DFFTImageFilter.hxx"
only do FFT along one dimension using FFTW as a backend.
void ThreadedGenerateData(const OutputImageRegionType &, ThreadIdType threadID) override
typename Superclass::OutputImageType OutputImageType
~FFTWForward1DFFTImageFilter() override
void BeforeThreadedGenerateData() override
const ImageRegionSplitterBase * GetImageRegionSplitter() const override
typename std::vector< typename FFTW1DProxyType::ComplexType * > PlanBufferPointerType
FFTWForward1DFFTImageFilter()
typename std::vector< typename FFTW1DProxyType::PlanType > PlanArrayType
typename Superclass::InputImageType InputImageType
typename OutputImageType::RegionType OutputImageRegionType
typename fftw::ComplexToComplexProxy< typename TInputImage::PixelType > FFTW1DProxyType
Perform the Fast Fourier Transform, in the forward direction, with real inputs, but only along one di...
Divide an image region into several pieces.
Light weight base class for most itk classes.
ImageBaseType::RegionType RegionType
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
unsigned int ThreadIdType
TUnderlying InputPixelType
std::complex< TUnderlying > OutputPixelType
std::integer_sequence< unsigned int, 4, 3, 2, 1 > FilterDimensions
Helper defining pixel traits for templated FFT image filters.