OTB  10.0.0
Orfeo Toolbox
otbWaveletsBandsListToWaveletsSynopsisImageFilter.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2005-2024 Centre National d'Etudes Spatiales (CNES)
3  *
4  * This file is part of Orfeo Toolbox
5  *
6  * https://www.orfeo-toolbox.org/
7  *
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  */
20 
21 #ifndef otbWaveletsBandsListToWaveletsSynopsisImageFilter_h
22 #define otbWaveletsBandsListToWaveletsSynopsisImageFilter_h
23 
24 
26 
27 namespace otb
28 {
29 
39 template <class TImageList, class TImage>
40 class ITK_EXPORT WaveletsBandsListToWaveletsSynopsisImageFilter : public ImageListToImageFilter<typename TImageList::ImageType, TImage>
41 {
42 public:
46  typedef itk::SmartPointer<Self> Pointer;
47  typedef itk::SmartPointer<const Self> ConstPointer;
48 
50  itkNewMacro(Self);
51 
53  typedef TImageList InputImageListType;
54  typedef typename InputImageListType::ImageType InputImageType;
55  typedef TImage OutputImageType;
56  typedef typename OutputImageType::RegionType RegionType;
57 
60 
62  itkSetMacro(DecimationRatio, unsigned int);
63 
65  itkGetMacro(DecimationRatio, unsigned int);
66 
67 protected:
69  virtual void DynamicThreadedGenerateData(const RegionType& outputRegionForThread) override;
70 
75  virtual void GenerateOutputInformation(void) override;
76 
81  virtual void GenerateInputRequestedRegion(void) override;
82 
85 
88 
90  virtual void PrintSelf(std::ostream& os, itk::Indent indent) const override;
91 
92 private:
94  void operator=(const Self&) = delete;
95 
97  unsigned int m_DecimationRatio;
98 };
99 } // End namespace otb
100 #ifndef OTB_MANUAL_INSTANTIATION
102 #endif
103 
104 #endif
Base class for all the filters taking an images list as input to produce an image.
Base class for all the filters taking an image input to produce an image list.
Converts a list of wavelets bands to the traditional multi-resolution wavelets view.
virtual void GenerateOutputInformation(void) override
virtual void GenerateInputRequestedRegion(void) override
virtual void DynamicThreadedGenerateData(const RegionType &outputRegionForThread) override
ImageListToImageFilter< typename TImageList::ImageType, TImage > Superclass
virtual void PrintSelf(std::ostream &os, itk::Indent indent) const override
WaveletsBandsListToWaveletsSynopsisImageFilter(const Self &)=delete
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.