18 #ifndef itkLabelObject_h
19 #define itkLabelObject_h
63 template<
typename TLabel,
unsigned int VImageDimension >
163 template<
typename TSourceLabelObject >
167 template<
typename TSourceLabelObject >
171 template<
typename TSourceLabelObject >
194 m_Begin = lo->m_LineContainer.begin();
195 m_End = lo->m_LineContainer.end();
239 return !( *
this == iter );
278 m_Begin = lo->m_LineContainer.begin();
279 m_End = lo->m_LineContainer.end();
331 return !( *
this == iter );
371 virtual void PrintSelf(std::ostream & os,
Indent indent)
const ITK_OVERRIDE;
375 void operator=(const
Self &) ITK_DELETE_FUNCTION;
384 #ifndef ITK_MANUAL_INSTANTIATION
385 #include "itkLabelObject.hxx"
void AddLine(const IndexType &idx, const LengthType &length)
bool RemoveIndex(const IndexType &idx)
Light weight base class for most itk classes.
bool operator==(const ConstLineIterator &iter) const
Represent the offset between two n-dimensional indexes in a n-dimensional image.
IndexType GetIndex(SizeValueType i) const
ConstLineIterator(const Self *lo)
InternalIteratorType m_End
signed long OffsetValueType
ConstIndexIterator & operator++()
bool operator==(const ConstIndexIterator &iter) const
bool operator!=(const ConstIndexIterator &iter) const
std::deque< LineType > LineContainerType
void CopyLinesFrom(const TSourceLabelObject *src)
InternalIteratorType m_Begin
static AttributeType GetAttributeFromName(const std::string &s)
std::deque< LineType > LineContainerType
void SetLabel(const LabelType &label)
Implements a weak reference to an object.
static const unsigned int ImageDimension
std::deque< LineType > LineContainerType
ConstLineIterator & operator++()
unsigned long SizeValueType
LabelObjectLine< VImageDimension > LineType
const IndexType & GetIndex() const
SmartPointer< const Self > ConstPointer
LineContainerType m_LineContainer
unsigned int AttributeType
Index< VImageDimension > IndexType
static std::string GetNameFromAttribute(const AttributeType &a)
const LineType & GetLine() const
void CopyAllFrom(const TSourceLabelObject *src)
void AddIndex(const IndexType &idx)
LineType::LengthType LengthType
Offset< VImageDimension > OffsetType
void Shift(OffsetType offset)
const LineType & GetLine(SizeValueType i) const
LineContainerType::const_iterator InternalIteratorType
virtual void PrintSelf(std::ostream &os, Indent indent) const override
void Fill(IndexValueType value)
ConstIndexIterator & operator=(const ConstIndexIterator &iter)
ConstIndexIterator(const Self *lo)
bool HasIndex(const IndexType &idx) const
SizeValueType Size() const
itk::SizeValueType SizeValueType
ConstLineIterator operator++(int)
ConstIndexIterator(const ConstIndexIterator &iter)
ConstIndexIterator operator++(int)
bool operator!=(const ConstLineIterator &iter) const
The base class for the representation of an labeled binary object in an image.
InternalIteratorType m_Iterator
WeakPointer< const Self > ConstWeakPointer
SmartPointer< Self > Pointer
ConstLineIterator(const ConstLineIterator &iter)
InternalIteratorType m_Iterator
LineContainerType::const_iterator InternalIteratorType
Control indentation during Print() invocation.
static const AttributeType LABEL
const LabelType & GetLabel() const
InternalIteratorType m_End
InternalIteratorType m_Begin
void CopyAttributesFrom(const TSourceLabelObject *src)
SizeValueType GetNumberOfLines() const
A forward iterator over the lines of a LabelObject.
ConstLineIterator & operator=(const ConstLineIterator &iter)