Orfeo Toolbox  3.16
itkPasteImageFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Insight Segmentation & Registration Toolkit
4  Module: $RCSfile: itkPasteImageFilter.h,v $
5  Language: C++
6  Date: $Date: 2009-07-14 11:49:10 $
7  Version: $Revision: 1.8 $
8 
9  Copyright (c) Insight Software Consortium. All rights reserved.
10  See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
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 #ifndef __itkPasteImageFilter_h
18 #define __itkPasteImageFilter_h
19 
20 #include "itkInPlaceImageFilter.h"
21 #include "itkSmartPointer.h"
22 
23 namespace itk
24 {
25 
42 template <class TInputImage, class TSourceImage=TInputImage, class TOutputImage=TInputImage>
44  public InPlaceImageFilter<TInputImage,TOutputImage>
45 {
46 public:
52 
54  itkNewMacro(Self);
55 
58 
62 
64  typedef TInputImage InputImageType;
65  typedef TOutputImage OutputImageType;
66  typedef TSourceImage SourceImageType;
67  typedef typename OutputImageType::RegionType OutputImageRegionType;
68  typedef typename InputImageType::RegionType InputImageRegionType;
69  typedef typename SourceImageType::RegionType SourceImageRegionType;
70 
71  typedef typename SourceImageType::Pointer SourceImagePointer;
72  typedef typename SourceImageType::ConstPointer SourceImageConstPointer;
73 
75  typedef typename OutputImageType::PixelType OutputImagePixelType;
76  typedef typename InputImageType::PixelType InputImagePixelType;
77  typedef typename SourceImageType::PixelType SourceImagePixelType;
78 
80  typedef typename OutputImageType::IndexType OutputImageIndexType;
81  typedef typename OutputImageType::SizeType OutputImageSizeType;
82  typedef typename InputImageType::IndexType InputImageIndexType;
83  typedef typename InputImageType::SizeType InputImageSizeType;
84  typedef typename SourceImageType::IndexType SourceImageIndexType;
85  typedef typename SourceImageType::SizeType SourceImageSizeType;
86 
88  itkStaticConstMacro(InputImageDimension, unsigned int,
89  InputImageType::ImageDimension);
90  itkStaticConstMacro(OutputImageDimension, unsigned int,
91  OutputImageType::ImageDimension);
92  itkStaticConstMacro(SourceImageDimension, unsigned int,
93  SourceImageType::ImageDimension);
94 
97  itkSetMacro(DestinationIndex, InputImageIndexType);
98  itkGetConstMacro(DestinationIndex, InputImageIndexType);
99 
102  itkSetMacro(SourceRegion, SourceImageRegionType);
103  itkGetConstMacro(SourceRegion, SourceImageRegionType);
104 
107  void SetDestinationImage(const InputImageType *dest);
108  const InputImageType * GetDestinationImage() const;
109 
112  void SetSourceImage(const SourceImageType *src);
113  const SourceImageType * GetSourceImage() const;
114 
124  virtual void GenerateInputRequestedRegion();
125 
126 
127 protected:
130  void PrintSelf(std::ostream& os, Indent indent) const;
131 
141  void ThreadedGenerateData(const OutputImageRegionType& outputRegionForThread,
142  int threadId );
143 
146 
147 private:
148  PasteImageFilter(const Self&); //purposely not implemented
149  void operator=(const Self&); //purposely not implemented
150 
151 };
152 
153 
154 } // end namespace itk
155 
156 #ifndef ITK_MANUAL_INSTANTIATION
157 #include "itkPasteImageFilter.txx"
158 #endif
159 
160 #endif

Generated at Sat May 18 2013 23:59:28 for Orfeo Toolbox with doxygen 1.8.3.1