ITK  6.0.0
Insight Toolkit
itkHalfToFullHermitianImageFilter.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright NumFOCUS
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 * https://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 itkHalfToFullHermitianImageFilter_h
19#define itkHalfToFullHermitianImageFilter_h
20
23
24namespace itk
25{
45template <typename TInputImage>
46class ITK_TEMPLATE_EXPORT HalfToFullHermitianImageFilter : public ImageToImageFilter<TInputImage, TInputImage>
47{
48public:
49 ITK_DISALLOW_COPY_AND_MOVE(HalfToFullHermitianImageFilter);
50
52 using InputImageType = TInputImage;
53 using InputImagePixelType = typename InputImageType::PixelType;
59 using OutputImageType = TInputImage;
60 using OutputImagePixelType = typename OutputImageType::PixelType;
66
71
73 itkNewMacro(Self);
74
76 itkOverrideGetNameOfClassMacro(HalfToFullHermitianImageFilter);
77
79 static constexpr unsigned int ImageDimension = TInputImage::ImageDimension;
80
82 itkSetGetDecoratedInputMacro(ActualXDimensionIsOdd, bool);
83 itkBooleanMacro(ActualXDimensionIsOdd);
86protected:
88 ~HalfToFullHermitianImageFilter() override = default;
89
90 void
91 DynamicThreadedGenerateData(const OutputImageRegionType & outputRegionForThread) override;
92
93
95 void
97
99 void
101};
102} // end namespace itk
103
104#ifndef ITK_MANUAL_INSTANTIATION
105# include "itkHalfToFullHermitianImageFilter.hxx"
106#endif
107
108#endif // itkHalfToFullHermitianImageFilter_h
Expands a half image produced from a real-to-complex discrete Fourier transform (DFT) to the full com...
typename InputImageType::SizeValueType InputImageSizeValueType
typename InputImageType::RegionType InputImageRegionType
typename InputImageType::IndexType InputImageIndexType
typename InputImageType::PixelType InputImagePixelType
typename InputImageType::SizeType InputImageSizeType
void DynamicThreadedGenerateData(const OutputImageRegionType &outputRegionForThread) override
typename OutputImageType::IndexValueType OutputImageIndexValueType
typename OutputImageType::IndexType OutputImageIndexType
~HalfToFullHermitianImageFilter() override=default
typename OutputImageType::PixelType OutputImagePixelType
typename OutputImageType::SizeValueType OutputImageSizeValueType
typename InputImageType::IndexValueType InputImageIndexValueType
typename OutputImageType::RegionType OutputImageRegionType
void GenerateInputRequestedRegion() override
typename OutputImageType::SizeType OutputImageSizeType
Base class for filters that take an image as input and produce an image as output.
Light weight base class for most itk classes.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
long IndexValueType
Definition: itkIntTypes.h:93
unsigned long SizeValueType
Definition: itkIntTypes.h:86