18 #ifndef itkMultiResolutionPyramidImageFilter_h
19 #define itkMultiResolutionPyramidImageFilter_h
108 template <
typename TInputImage,
typename TOutputImage>
130 static constexpr
unsigned int ImageDimension = TInputImage::ImageDimension;
131 static constexpr
unsigned int OutputImageDimension = TOutputImage::ImageDimension;
134 using typename Superclass::InputImageType;
135 using typename Superclass::OutputImageType;
136 using typename Superclass::InputImagePointer;
137 using typename Superclass::OutputImagePointer;
138 using typename Superclass::InputImageConstPointer;
147 SetNumberOfLevels(
unsigned int num);
150 itkGetConstMacro(NumberOfLevels,
unsigned int);
169 SetStartingShrinkFactors(
unsigned int factor);
172 SetStartingShrinkFactors(
const unsigned int * factors);
176 GetStartingShrinkFactors()
const;
182 IsScheduleDownwardDivisible(
const ScheduleType & schedule);
191 GenerateOutputInformation()
override;
198 GenerateOutputRequestedRegion(
DataObject * refOutput)
override;
208 GenerateInputRequestedRegion()
override;
210 itkSetMacro(MaximumError,
double);
211 itkGetConstReferenceMacro(MaximumError,
double);
213 itkSetMacro(UseShrinkImageFilter,
bool);
214 itkGetConstMacro(UseShrinkImageFilter,
bool);
215 itkBooleanMacro(UseShrinkImageFilter);
217 #ifdef ITK_USE_CONCEPT_CHECKING
228 PrintSelf(std::ostream & os,
Indent indent)
const override;
232 GenerateData()
override;
234 double m_MaximumError{};
236 unsigned int m_NumberOfLevels{};
239 bool m_UseShrinkImageFilter{};
243 #ifndef ITK_MANUAL_INSTANTIATION
244 # include "itkMultiResolutionPyramidImageFilter.hxx"