19 #ifndef rtkFFTRampImageFilter_h    20 #define rtkFFTRampImageFilter_h    23 #include "rtkConfiguration.h"    30 #ifndef ITK_GCC_PRAGMA_PUSH    31 #define ITK_GCC_PRAGMA_PUSH CLANG_PRAGMA_PUSH    33 #ifndef ITK_GCC_SUPPRESS_Wfloat_equal    34 #define ITK_GCC_SUPPRESS_Wfloat_equal CLANG_SUPPRESS_Wfloat_equal    36 #ifndef ITK_GCC_PRAGMA_POP    37 #define ITK_GCC_PRAGMA_POP CLANG_PRAGMA_POP    40 #define itkSetMacro(name, type)                     \    41   virtual void Set##name(type _arg)                 \    43     itkDebugMacro("setting " #name " to " << _arg); \    45     ITK_GCC_SUPPRESS_Wfloat_equal                       \    46     if (this->m_##name != _arg)                     \    48       this->m_##name = std::move(_arg);             \    50       this->m_KernelFFT = nullptr;                  \    54   ITK_MACROEND_NOOP_STATEMENT    73 template <
class TInputImage, 
class TOutputImage = TInputImage, 
class TFFTPrecision = 
double>
    90   using IndexType = 
typename InputImageType::IndexType;
    91   using SizeType = 
typename InputImageType::SizeType;
   105   itkGetConstMacro(HannCutFrequency, 
double);
   110   itkGetConstMacro(CosineCutFrequency, 
double);
   115   itkGetConstMacro(HammingFrequency, 
double);
   120   itkGetConstMacro(HannCutFrequencyY, 
double);
   131   itkGetConstMacro(RamLakCutFrequency, 
double);
   142   itkGetConstMacro(SheppLoganCutFrequency, 
double);
   151   GenerateInputRequestedRegion() 
override;
   156   UpdateFFTProjectionsConvolutionKernel(
const SizeType s) 
override;
   165   double m_HannCutFrequency{ 0. };
   166   double m_CosineCutFrequency{ 0. };
   167   double m_HammingFrequency{ 0. };
   168   double m_HannCutFrequencyY{ 0. };
   172   double m_RamLakCutFrequency{ 0. };
   173   double m_SheppLoganCutFrequency{ 0. };
   179 #ifndef ITK_MANUAL_INSTANTIATION   180 #  include "rtkFFTRampImageFilter.hxx"   186 #define itkSetMacro(name, type)                     \   187   virtual void Set##name(type _arg)                 \   189     itkDebugMacro("setting " #name " to " << _arg); \   190     ITK_GCC_PRAGMA_PUSH                                 \   191     ITK_GCC_SUPPRESS_Wfloat_equal                       \   192     if (this->m_##name != _arg)                     \   194       this->m_##name = std::move(_arg);             \   199   ITK_MACROEND_NOOP_STATEMENT 
Base class for 1D or 2D FFT based convolution of projections. 
TFFTPrecision FFTPrecisionType
SizeType m_PreviousKernelUpdateSize
typename InputImageType::SizeType SizeType
TInputImage InputImageType
#define itkSetMacro(name, type)
typename FFTInputImageType::Pointer FFTInputImagePointer
typename InputImageType::IndexType IndexType
typename itk::Image< TFFTPrecision, TInputImage::ImageDimension > FFTInputImageType
Implements the ramp image filter of the filtered backprojection algorithm. 
typename FFTOutputImageType::Pointer FFTOutputImagePointer
TOutputImage OutputImageType
typename itk::Image< std::complex< TFFTPrecision >, TInputImage::ImageDimension > FFTOutputImageType