22 #ifndef otbVectorDataToLabelMapWithAttributesFilter_h
23 #define otbVectorDataToLabelMapWithAttributesFilter_h
25 #include "itkLabelObject.h"
26 #include "itkProgressReporter.h"
27 #include "itkBarrier.h"
28 #include "itkConceptChecking.h"
29 #include "itkContinuousIndex.h"
64 template <
class TVectorData,
class TLabelMap>
90 typedef typename OutputLabelMapType::LabelType
LabelType;
92 typedef typename OutputLabelMapType::IndexType
IndexType;
94 typedef typename OutputLabelMapType::PointType
OriginType;
97 typedef typename OutputLabelMapType::RegionType
RegionType;
107 itkStaticConstMacro(VectorDataDimension,
unsigned int, TVectorData::Dimension);
110 typedef itk::Size<itkGetStaticConstMacro(VectorDataDimension)>
SizeType;
112 typedef typename InputVectorDataType::PointType
PointType;
148 itkGetConstReferenceMacro(Size,
SizeType);
155 virtual void SetOrigin(
const double origin[2]);
156 virtual void SetOrigin(
const float origin[2]);
159 itkGetConstReferenceMacro(Origin,
OriginType);
163 itkGetConstReferenceMacro(StartIndex,
IndexType);
170 virtual void SetSpacing(
const SpacingType& spacing);
171 virtual void SetSpacing(
const double spacing[2]);
172 virtual void SetSpacing(
const float spacing[2]);
179 using Superclass::SetInput;
187 itkSetMacro(AutomaticSizeComputation,
bool);
189 itkGetMacro(AutomaticSizeComputation,
bool);
200 void GenerateOutputInformation()
override;
207 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
213 void GenerateData()
override;
228 void operator=(
const Self&) =
delete;
230 void ProcessNode(InternalTreeNodeType* source);
255 #ifndef OTB_MANUAL_INSTANTIATION