Orfeo Toolbox  4.0
otbConcatenateVectorImageFilter.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 
9  Copyright (c) Centre National d'Etudes Spatiales. All rights reserved.
10  See OTBCopyright.txt for details.
11 
12 
13  This software is distributed WITHOUT ANY WARRANTY; without even
14  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15  PURPOSE. See the above copyright notices for more information.
16 
17 =========================================================================*/
18 #ifndef __otbConcatenateVectorImageFilter_h
19 #define __otbConcatenateVectorImageFilter_h
20 
21 #include "itkImageToImageFilter.h"
22 #include "otbVectorImage.h"
23 
24 namespace otb
25 {
30 template<class TInputImage1, class TInputImage2, class TOutputImage>
32  : public itk::ImageToImageFilter<TInputImage1, TOutputImage>
33 {
34 public:
40 
42  itkNewMacro(Self);
43 
45  itkTypeMacro(VectorImageToImagePixelAccessor, ImageToImageFilter);
46 
48  typedef TInputImage1 InputImage1Type;
49  typedef TInputImage2 InputImage2Type;
50  typedef TOutputImage OutputImageType;
51 
52  typedef typename InputImage1Type::Pointer InputImage1PointerType;
53  typedef typename InputImage2Type::Pointer InputImage2PointerType;
54  typedef typename OutputImageType::Pointer OutputImagePointerType;
55 
56  typedef typename OutputImageType::PixelType OutputPixelType;
57  typedef typename OutputImageType::InternalPixelType OutputInternalPixelType;
58  typedef typename OutputImageType::RegionType OutputImageRegionType;
59 
64  void SetInput1(const TInputImage1 * image);
69  InputImage1Type * GetInput1(void);
74  void SetInput2(const TInputImage2 * image);
79  InputImage2Type * GetInput2(void);
80 
82  itkStaticConstMacro(InputImage1Dimension, unsigned int, TInputImage1::ImageDimension);
83  itkStaticConstMacro(InputImage2Dimension, unsigned int, TInputImage2::ImageDimension);
84  itkStaticConstMacro(OutputImageDimension, unsigned int, TOutputImage::ImageDimension);
85 
86 protected:
91  virtual void GenerateOutputInformation();
92  virtual void BeforeThreadedGenerateData();
94  virtual void ThreadedGenerateData(const OutputImageRegionType& outputRegionForThread, itk::ThreadIdType threadId);
96  void PrintSelf(std::ostream& os, itk::Indent indent) const;
97 
98 private:
99  ConcatenateVectorImageFilter(const Self &); //purposely not implemented
100  void operator =(const Self&); //purposely not implemented
101 };
102 } // end namespace otb
103 #ifndef OTB_MANUAL_INSTANTIATION
105 #endif
106 #endif

Generated at Sat Mar 8 2014 15:53:00 for Orfeo Toolbox with doxygen 1.8.3.1