18 #ifndef __itkLabelMapMaskImageFilter_h
19 #define __itkLabelMapMaskImageFilter_h
46 template<
class TInputImage,
class TOutputImage>
65 typedef typename LabelObjectType::LabelType
LabelType;
72 typedef typename OutputImageType::IndexType
IndexType;
73 typedef typename OutputImageType::SizeType
SizeType;
78 itkStaticConstMacro(InputImageDimension,
unsigned int,
79 TInputImage::ImageDimension);
80 itkStaticConstMacro(OutputImageDimension,
unsigned int,
81 TOutputImage::ImageDimension);
82 itkStaticConstMacro(ImageDimension,
unsigned int,
83 TOutputImage::ImageDimension);
94 void SetFeatureImage(
const TOutputImage *input)
97 this->SetNthInput( 1, const_cast<TOutputImage *>(input) );
107 void SetInput1(
const TInputImage *input)
109 this->SetInput( input );
113 void SetInput2(
const TOutputImage *input)
115 this->SetFeatureImage( input );
122 itkSetMacro(BackgroundValue, OutputImagePixelType);
123 itkGetConstMacro(BackgroundValue, OutputImagePixelType);
129 itkSetMacro(Label, InputImagePixelType);
130 itkGetConstMacro(Label, InputImagePixelType);
136 itkSetMacro(Negated,
bool);
137 itkGetConstReferenceMacro(Negated,
bool);
138 itkBooleanMacro(Negated);
144 itkSetMacro(Crop,
bool);
145 itkGetConstReferenceMacro(Crop,
bool);
146 itkBooleanMacro(Crop);
153 itkSetMacro(CropBorder, SizeType);
154 itkGetConstReferenceMacro(CropBorder, SizeType);
164 void GenerateInputRequestedRegion();
167 void EnlargeOutputRequestedRegion(
DataObject *itkNotUsed(output));
169 virtual void GenerateOutputInformation();
171 virtual void BeforeThreadedGenerateData();
173 virtual void ThreadedGenerateData(
const OutputImageRegionType& outputRegionForThread,
ThreadIdType threadId );
175 virtual void ThreadedProcessLabelObject( LabelObjectType * labelObject );
177 void PrintSelf(std::ostream& os,
Indent indent)
const;
181 void operator=(
const Self&);
197 #ifndef ITK_MANUAL_INSTANTIATION
198 #include "itkLabelMapMaskImageFilter.hxx"