Orfeo Toolbox  3.16
itkShapeRelabelImageFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Insight Segmentation & Registration Toolkit
4  Module: $RCSfile: itkShapeRelabelImageFilter.h,v $
5  Language: C++
6  Date: $Date: 2009-08-08 01:21:23 $
7  Version: $Revision: 1.4 $
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 __itkShapeRelabelImageFilter_h
18 #define __itkShapeRelabelImageFilter_h
19 
20 #include "itkImageToImageFilter.h"
21 #include "itkShapeLabelObject.h"
22 #include "itkLabelMap.h"
24 #include "itkShapeLabelMapFilter.h"
27 
28 
29 namespace itk {
30 
46 template<class TInputImage>
48  public ImageToImageFilter<TInputImage, TInputImage>
49 {
50 public:
56 
58  typedef TInputImage InputImageType;
59  typedef TInputImage OutputImageType;
60  typedef typename InputImageType::Pointer InputImagePointer;
61  typedef typename InputImageType::ConstPointer InputImageConstPointer;
62  typedef typename InputImageType::RegionType InputImageRegionType;
63  typedef typename InputImageType::PixelType InputImagePixelType;
64  typedef typename OutputImageType::Pointer OutputImagePointer;
65  typedef typename OutputImageType::ConstPointer OutputImageConstPointer;
66  typedef typename OutputImageType::RegionType OutputImageRegionType;
67  typedef typename OutputImageType::PixelType OutputImagePixelType;
68 
70  itkStaticConstMacro(InputImageDimension, unsigned int,
71  TInputImage::ImageDimension);
72  itkStaticConstMacro(OutputImageDimension, unsigned int,
73  TInputImage::ImageDimension);
74  itkStaticConstMacro(ImageDimension, unsigned int,
75  TInputImage::ImageDimension);
76 
86 
88  itkNewMacro(Self);
89 
91  itkTypeMacro(ShapeRelabelImageFilter,
93 
94 #ifdef ITK_USE_CONCEPT_CHECKING
95 
96  itkConceptMacro(InputEqualityComparableCheck,
98  itkConceptMacro(IntConvertibleToInputCheck,
100  itkConceptMacro(InputOStreamWritableCheck,
103 #endif
104 
109  itkSetMacro(BackgroundValue, OutputImagePixelType);
110  itkGetConstMacro(BackgroundValue, OutputImagePixelType);
111 
117  itkGetConstMacro( ReverseOrdering, bool );
118  itkSetMacro( ReverseOrdering, bool );
119  itkBooleanMacro( ReverseOrdering );
120 
124  itkGetConstMacro( Attribute, AttributeType );
125  itkSetMacro( Attribute, AttributeType );
126  void SetAttribute( const std::string & s )
127  {
128  this->SetAttribute( LabelObjectType::GetAttributeFromName( s ) );
129  }
130 
131 
132 protected:
135  void PrintSelf(std::ostream& os, Indent indent) const;
136 
140  void GenerateInputRequestedRegion();
141 
143  void EnlargeOutputRequestedRegion(DataObject *itkNotUsed(output));
144 
147  void GenerateData();
148 
149 private:
150  ShapeRelabelImageFilter(const Self&); //purposely not implemented
151  void operator=(const Self&); //purposely not implemented
152 
156 }; // end of class
157 
158 } // end namespace itk
159 
160 #ifndef ITK_MANUAL_INSTANTIATION
162 #endif
163 
164 #endif

Generated at Sun May 19 2013 00:07:09 for Orfeo Toolbox with doxygen 1.8.3.1