23 #ifndef otbWaveletPacketTransform_h
24 #define otbWaveletPacketTransform_h
26 #include "itkProgressAccumulator.h"
63 class TCost = FullyDecomposedWaveletPacketCost<TInputImage>>
87 void operator=(
const Self&);
117 template <
class TInputImage,
class TOutputImage,
class TFilter,
class TCost>
138 typedef typename InputImageType::SizeType
SizeType;
165 return this->m_WaveletPacketRule;
169 itkGetMacro(NumberOfFilters,
unsigned int);
170 itkGetMacro(DepthOfDecomposition,
unsigned int);
173 itkStaticConstMacro(InputImageDimension,
unsigned int, TInputImage::ImageDimension);
183 itkGetMacro(SubsampleImageFactor,
unsigned int);
184 itkSetMacro(SubsampleImageFactor,
unsigned int);
197 void GenerateData()
override;
200 virtual void GenerateData(
unsigned int depth, OutputImageType* outputPtr, itk::ProgressAccumulator* accumulator);
204 void operator=(
const Self&);
250 template <
class TInputImage,
class TOutputImage,
class TFilter>
272 typedef typename InputImageType::SizeType
SizeType;
300 return this->m_WaveletPacketRule;
304 this->m_WaveletPacketRule = rule;
317 itkGetMacro(SubsampleImageFactor,
unsigned int);
318 itkSetMacro(SubsampleImageFactor,
unsigned int);
322 itkGetMacro(NumberOfFilters,
unsigned int);
323 itkGetMacro(DepthOfDecomposition,
unsigned int);
326 itkStaticConstMacro(InputImageDimension,
unsigned int, TInputImage::ImageDimension);
338 void GenerateOutputInformation()
override;
344 void GenerateData()
override;
347 virtual unsigned int SetInputFilters(
unsigned int& ruleID, InputImageIterator& inputIter,
unsigned int filterID);
350 void InterpretRule();
351 void InterpretRule(
unsigned int& ruleID,
unsigned int curDepth);
356 void operator=(
const Self&);
377 #ifndef OTB_MANUAL_INSTANTIATION