ITK  5.0.0
Insight Segmentation and Registration Toolkit
itkDirectFourierReconstructionImageToImageFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2  *
3  * Copyright Insight Software Consortium
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0.txt
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *=========================================================================*/
18 #ifndef itkDirectFourierReconstructionImageToImageFilter_h
19 #define itkDirectFourierReconstructionImageToImageFilter_h
20 
21 #include "itkImageToImageFilter.h"
22 #include "itkImage.h"
23 
26 
29 
31 
32 #include <cmath>
33 
34 namespace itk
35 {
50 template< typename TInputImage, typename TOutputImage=TInputImage >
52  public ImageToImageFilter< TInputImage, TOutputImage >
53 {
54 public:
55  ITK_DISALLOW_COPY_AND_ASSIGN(DirectFourierReconstructionImageToImageFilter);
56 
59 
60  using InputImageType = TInputImage;
61  using InputPixelType = typename InputImageType::PixelType;
62  using OutputImageType = TOutputImage;
63  using OutputPixelType = typename OutputImageType::PixelType;
64 
67 
70 
73 
74  itkNewMacro(Self);
76 
79 
82 
85 
88 
90  using SpacingType = typename InputImageType::SpacingType;
91 
93  using ConstInputImagePointer = typename InputImageType::ConstPointer;
94 
96  using InputImagePointer = typename InputImageType::Pointer;
97 
99  using OutputImagePointer = typename OutputImageType::Pointer;
100 
101  itkSetMacro(ZeroPadding, unsigned short int);
102  itkGetConstMacro(ZeroPadding, unsigned short int);
103 
104  itkSetMacro(OverSampling, unsigned short int);
105  itkGetConstMacro(OverSampling, unsigned short int);
106 
107  itkSetMacro(Cutoff, double);
108  itkGetConstMacro(Cutoff, double);
109 
110  itkSetMacro(AlphaRange, double);
111  itkGetConstMacro(AlphaRange, double);
112 
113  itkSetMacro(AlphaDirection, unsigned short int);
114  itkGetConstMacro(AlphaDirection, unsigned short int);
115 
116  itkSetMacro(ZDirection, unsigned short int);
117  itkGetConstMacro(ZDirection, unsigned short int);
118 
119  itkSetMacro(RDirection, unsigned short int);
120  itkGetConstMacro(RDirection, unsigned short int);
121 
122  itkSetMacro(RadialSplineOrder, unsigned short int);
123  itkGetConstMacro(RadialSplineOrder, unsigned short int);
124 
125 protected:
128 
131 
133  void PrintSelf(std::ostream & os, Indent indent) const override;
134 
136  void GenerateOutputInformation() override;
137 
139  void GenerateInputRequestedRegion() override;
140 
142  void GenerateData() override;
143 
144 private:
147 
151 
154 
157 
160 
163 
167 
170 
173 
176 
179 
205 };
206 } // namespace itk
207 
208 #ifndef ITK_MANUAL_INSTANTIATION
209 #include "itkDirectFourierReconstructionImageToImageFilter.hxx"
210 #endif
211 
212 #endif /* itkDirectFourierReconstructionImageToImageFilter_h */
typename OutputImageType::Pointer OutputImagePointer
The base class for all process objects (source, filters, mappers) in the Insight data processing pipe...
Base class for all process objects that output image data.
Complex wrapper around BSplineInterpolateImageFunction.
typename InputImageType::Pointer InputImagePointer
Direct fourier reconstruction filter of a tomographic volume.
VNL based forward Fast Fourier Transform.
A multi-dimensional iterator templated over image type that walks pixels within a region and is speci...
TOutputImage OutputImageType
VNL-based reverse Fast Fourier Transform.
Base class for filters that take an image as input and produce an image as output.
Control indentation during Print() invocation.
Definition: itkIndent.h:49
Multi-dimensional image iterator which only walks a region.
Templated n-dimensional image class.
Definition: itkImage.h:75