Orfeo Toolbox  3.16
otbLocalRxDetectorNonThreadFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ORFEO Toolbox
4  Language: C++
5  Date: $Date$
6  Version: $Revision$
7 
8  Copyright (c) Centre National d'Etudes Spatiales. All rights reserved.
9  See OTBCopyright.txt for details.
10 
11 
12  This software is distributed WITHOUT ANY WARRANTY; without even
13  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14  PURPOSE. See the above copyright notices for more information.
15 
16 =========================================================================*/
17 
18 #ifndef __otbLocalRxDetectorNonThreadFilter_h
19 #define __otbLocalRxDetectorNonThreadFilter_h
20 
21 #include "itkImageToImageFilter.h"
22 
25 #include "itkImageRegionIterator.h"
26 #include "itkListSample.h"
27 #include "itkMeanCalculator.h"
29 #include "itkVariableSizeMatrix.h"
30 
31 namespace otb
32 {
33 
40 template <class TInputImage, class TOutputImage>
42  public itk::ImageToImageFilter<TInputImage, TOutputImage>
43 {
44 public:
45 
51 
53  itkNewMacro(Self);
54 
56  itkTypeMacro(LocalRxDetectorNonThreadFilter, ImageToImageFilter);
57 
59  typedef TInputImage InputImageType;
60  typedef typename InputImageType::Pointer InputPointerType;
61  typedef typename InputImageType::ConstPointer InputConstPointerType;
62  typedef typename InputImageType::IndexType InputIndexType;
63  typedef typename InputImageType::SizeType InputSizeType;
64 
65  typedef TOutputImage OutputImageType;
66  typedef typename OutputImageType::Pointer OutputPointerType;
67  typedef typename OutputImageType::IndexType OutputIndexType;
68  typedef typename OutputImageType::OffsetType OutputOffsetType;
69  typedef typename OutputImageType::SizeType OutputSizeType;
70  typedef typename OutputImageType::RegionType OutputImageRegionType;
71 
77 
79  typedef typename InputImageType::PixelType VectorMeasurementType;
84 
86  itkSetMacro(InternalRadius, int);
87  itkGetMacro(InternalRadius, int);
88  itkSetMacro(ExternalRadius, int);
89  itkGetMacro(ExternalRadius, int);
90 
92  virtual void GenerateInputRequestedRegion();
93  virtual void GenerateData();
94 // virtual void BeforeThreadedGenerateData();
95 // virtual void ThreadedGenerateData(const OutputImageRegionType& outputRegionForThread, int threadId);
96 
97 
98 protected:
101  void PrintSelf(std::ostream& os, itk::Indent indent) const;
102 
103 private:
104  LocalRxDetectorNonThreadFilter(const Self&); //purposely not implemented
105  void operator=(const Self&); //purposely not implemented
106 
109 
110 };
111 
112 } // end namespace otb
113 
114 #ifndef OTB_MANUAL_INSTANTIATION
116 #endif
117 
118 #endif

Generated at Sun Feb 3 2013 00:35:26 for Orfeo Toolbox with doxygen 1.8.1.1