18 #ifndef __itkLabelMap_h
19 #define __itkLabelMap_h
69 template<
typename TLabelObject >
97 itkStaticConstMacro(
ImageDimension,
unsigned int, LabelObjectType::ImageDimension);
139 virtual void Allocate(
bool initialize =
false) ITK_OVERRIDE;
265 itkGetConstMacro(BackgroundValue,
LabelType);
266 itkSetMacro(BackgroundValue, LabelType);
297 m_Begin = lm->m_LabelObjectContainer.begin();
298 m_End = lm->m_LabelObjectContainer.end();
347 return !( *
this == iter );
379 m_Begin = lm->m_LabelObjectContainer.begin();
380 m_End = lm->m_LabelObjectContainer.end();
429 return !( *
this == iter );
463 typedef typename LabelObjectContainerType::const_iterator
475 bool iEmitModifiedEvent );
479 #ifndef ITK_MANUAL_INSTANTIATION
480 #include "itkLabelMap.hxx"
Superclass::OffsetValueType OffsetValueType
void SetPixel(const IndexType &idx, const LabelType &label)
Set the pixel value at a given index in the image.
InternalIteratorType m_Iterator
Superclass::SizeType SizeType
Superclass::OffsetType OffsetType
const LabelType & GetPixel(const IndexType &idx) const
Index< VImageDimension > IndexType
TLabelObject LabelObjectType
ConstIterator(const Self *lm)
void RemoveLabel(const LabelType &label)
LabelObjectVectorType GetLabelObjects() const
virtual void Allocate(bool initialize=false) ITK_OVERRIDE
InternalIteratorType m_Iterator
Iterator(const Iterator &iter)
Superclass::DirectionType DirectionType
LabelObjectType * GetLabelObject()
SmartPointer< Self > Pointer
LabelObjectContainerType::iterator LabelObjectContainerIterator
WeakPointer< const Self > ConstWeakPointer
bool operator==(const Iterator &iter) const
LabelVectorType GetLabels() const
Implements a weak reference to an object.
static const unsigned int ImageDimension
LabelObjectContainerType m_LabelObjectContainer
void AddPixel(const IndexType &idx, const LabelType &label)
bool operator!=(const ConstIterator &iter) const
Size< VImageDimension > SizeType
const LabelType & GetLabel() const
Point< PointValueType, VImageDimension > PointType
SmartPointer< const Self > ConstPointer
Matrix< SpacePrecisionType, VImageDimension, VImageDimension > DirectionType
InternalIteratorType m_End
Self::SizeValueType GetNumberOfLabelObjects() const
ConstIterator & operator=(const ConstIterator &iter)
bool HasLabel(const LabelType label) const
std::map< LabelType, LabelObjectPointerType >::iterator InternalIteratorType
void PrintLabelObjects() const
LabelObjectType::Pointer LabelObjectPointerType
Superclass::SizeValueType SizeValueType
LabelType m_BackgroundValue
void PushLabelObject(LabelObjectType *labelObject)
virtual void Initialize()
std::map< LabelType, LabelObjectPointerType > LabelObjectContainerType
void operator=(const Self &)
Superclass::PointType PointType
bool operator!=(const Iterator &iter) const
Offset< VImageDimension > OffsetType
const LabelType & GetLabel() const
const LabelObjectType * GetLabelObject() const
Vector< SpacingValueType, VImageDimension > SpacingType
std::vector< LabelType > LabelVectorType
std::vector< LabelObjectPointerType > LabelObjectVectorType
LabelObjectType * GetLabelObject(const LabelType &label)
Iterator & operator=(const Iterator &iter)
std::map< LabelType, LabelObjectPointerType >::const_iterator InternalIteratorType
ConstIterator operator++(int)
A forward iterator over the LabelObjects of a LabelMap.
InternalIteratorType m_Begin
void AddLabelObject(LabelObjectType *labelObject)
void SetLine(const IndexType &idx, const LengthType &length, const LabelType &label)
Superclass::RegionType RegionType
SizeType::SizeValueType SizeValueType
OffsetType::OffsetValueType OffsetValueType
LabelObjectType * GetNthLabelObject(const SizeValueType &pos)
Superclass::SpacingType SpacingType
void RemoveLabelObject(LabelObjectType *labelObject)
Base class for templated image classes.
LabelObjectContainerType::const_iterator LabelObjectContainerConstIterator
LabelObjectType::LabelType LabelType
Superclass::IndexType IndexType
Control indentation during Print() invocation.
InternalIteratorType m_Begin
Templated n-dimensional image to store labeled objects.
ConstIterator & operator++()
virtual void Graft(const DataObject *data)
ImageRegion< VImageDimension > RegionType
InternalIteratorType m_End
void RemovePixel(const IndexType &idx, const LabelType &label)
A forward iterator over the LabelObjects of a LabelMap.
Base class for all data objects in ITK.
bool operator==(const ConstIterator &iter) const
ConstIterator(const ConstIterator &iter)
ImageBase< TLabelObject::ImageDimension > Superclass
void PrintSelf(std::ostream &os, Indent indent) const