22 #ifndef otbLabelMapToAttributeImageFilter_h
23 #define otbLabelMapToAttributeImageFilter_h
25 #include "itkLabelMapFilter.h"
27 #include "itkVariableLengthVector.h"
42 template <
class TInputImage,
class TOutputImage,
43 class TAttributeAccessor =
typename Functor::AttributesMapLabelObjectAccessor<typename TInputImage::LabelObjectType>>
49 typedef itk::LabelMapFilter<TInputImage, TOutputImage>
Superclass;
68 typedef typename OutputImageType::IndexType
IndexType;
84 return m_ChosenAttributes;
88 void SetChosenAttributes(AttributeListType& newAttributes);
91 unsigned int GetNumberOfComponentsPerPixel();
94 bool SetAttributeForNthChannel(
unsigned int channel,
const char* attribute);
99 return this->SetAttributeForNthChannel(channel, attribute.c_str());
106 void GenerateOutputInformation()
override;
108 void BeforeThreadedGenerateData()
override;
110 void ThreadedProcessLabelObject(LabelObjectType* labelObject)
override;
121 #ifndef OTB_MANUAL_INSTANTIATION