22 #ifndef otbLabelImageToLabelMapWithAdjacencyFilter_h
23 #define otbLabelImageToLabelMapWithAdjacencyFilter_h
25 #include "itkImageToImageFilter.h"
27 #include "itkLabelObject.h"
38 template <
class TInputImage,
class TOutputImage = otb::LabelMapWithAdjacency<itk::LabelObject<
typename TInputImage::PixelType, TInputImage::ImageDimension>>>
44 typedef itk::ImageToImageFilter<TInputImage, TOutputImage>
Superclass;
55 typedef typename InputImageType::IndexType
IndexType;
64 typedef typename OutputImageType::LabelType
LabelType;
70 itkStaticConstMacro(InputImageDimension,
unsigned int, TInputImage::ImageDimension);
71 itkStaticConstMacro(OutputImageDimension,
unsigned int, TOutputImage::ImageDimension);
96 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
124 void GenerateInputRequestedRegion()
override;
127 void EnlargeOutputRequestedRegion(itk::DataObject* itkNotUsed(output))
override;
129 void BeforeThreadedGenerateData()
override;
131 void ThreadedGenerateData(
const OutputImageRegionType& outputRegionForThread, itk::ThreadIdType threadId)
override;
133 void AfterThreadedGenerateData()
override;
139 void ParseLine(
const RLEVectorType& line, itk::ThreadIdType threadId);
147 void operator=(
const Self&) =
delete;
158 #ifndef OTB_MANUAL_INSTANTIATION