ITK  5.2.0
Insight Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Private Attributes | List of all members
itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue > Class Template Reference

#include <itkAttributeLabelObject.h>

+ Inheritance diagram for itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >:
+ Collaboration diagram for itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >:

Public Types

using AttributeValueType = TAttributeValue
 
using ConstPointer = SmartPointer< const Self >
 
using ConstWeakPointer = WeakPointer< const Self >
 
using IndexType = typename Superclass::IndexType
 
using LabelMapType = LabelMap< Self >
 
using LabelObjectType = typename Superclass::LabelObjectType
 
using LabelType = TLabel
 
using LengthType = typename Superclass::LengthType
 
using LineType = typename Superclass::LineType
 
using Pointer = SmartPointer< Self >
 
using Self = AttributeLabelObject
 
using Superclass = LabelObject< TLabel, VImageDimension >
 
- Public Types inherited from itk::LabelObject< TLabel, VImageDimension >
using AttributeType = unsigned int
 
using ConstPointer = SmartPointer< const Self >
 
using ConstWeakPointer = WeakPointer< const Self >
 
using IndexType = Index< VImageDimension >
 
using LabelObjectType = Self
 
using LabelType = TLabel
 
using LengthType = typename LineType::LengthType
 
using LineType = LabelObjectLine< VImageDimension >
 
using OffsetType = Offset< VImageDimension >
 
using Pointer = SmartPointer< Self >
 
using Self = LabelObject
 
using SizeValueType = itk::SizeValueType
 
using Superclass = LightObject
 
- Public Types inherited from itk::LightObject
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = LightObject
 

Public Member Functions

template<typename TSourceLabelObject >
void CopyAllFrom (const TSourceLabelObject *src)
 
template<typename TSourceLabelObject >
void CopyAttributesFrom (const TSourceLabelObject *src)
 
virtual ::itk::LightObject::Pointer CreateAnother () const
 
AttributeValueType GetAttribute ()
 
const AttributeValueTypeGetAttribute () const
 
virtual const char * GetNameOfClass () const
 
void SetAttribute (const AttributeValueType &v)
 
- Public Member Functions inherited from itk::LabelObject< TLabel, VImageDimension >
void AddIndex (const IndexType &idx)
 
void AddLine (const IndexType &idx, const LengthType &length)
 
void AddLine (const LineType &line)
 
void Clear ()
 
template<typename TSourceLabelObject >
void CopyAllFrom (const TSourceLabelObject *src)
 
template<typename TSourceLabelObject >
void CopyAttributesFrom (const TSourceLabelObject *src)
 
template<typename TSourceLabelObject >
void CopyLinesFrom (const TSourceLabelObject *src)
 
virtual ::itk::LightObject::Pointer CreateAnother () const
 
bool Empty () const
 
IndexType GetIndex (SizeValueType offset) const
 
const LabelTypeGetLabel () const
 
LineTypeGetLine (SizeValueType i)
 
const LineTypeGetLine (SizeValueType i) const
 
SizeValueType GetNumberOfLines () const
 
bool HasIndex (const IndexType &idx) const
 
void Optimize ()
 
bool RemoveIndex (const IndexType &idx)
 
void SetLabel (const LabelType &label)
 
void Shift (OffsetType offset)
 
SizeValueType Size () const
 
- Public Member Functions inherited from itk::LightObject
Pointer Clone () const
 
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
void Print (std::ostream &os, Indent indent=0) const
 
virtual void Register () const
 
virtual void SetReferenceCount (int)
 
virtual void UnRegister () const noexcept
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::LabelObject< TLabel, VImageDimension >
static AttributeType GetAttributeFromName (const std::string &s)
 
static std::string GetNameFromAttribute (const AttributeType &a)
 
static Pointer New ()
 
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 

Static Public Attributes

static constexpr unsigned int ImageDimension = VImageDimension
 
- Static Public Attributes inherited from itk::LabelObject< TLabel, VImageDimension >
static constexpr unsigned int ImageDimension = VImageDimension
 
static constexpr AttributeType LABEL = 0
 

Protected Member Functions

 AttributeLabelObject ()
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
- Protected Member Functions inherited from itk::LabelObject< TLabel, VImageDimension >
 LabelObject ()
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 
 LightObject ()
 
virtual void PrintHeader (std::ostream &os, Indent indent) const
 
virtual void PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 

Private Attributes

AttributeValueType m_Attribute
 

Additional Inherited Members

- Protected Attributes inherited from itk::LightObject
std::atomic< int > m_ReferenceCount
 

Detailed Description

template<typename TLabel, unsigned int VImageDimension, typename TAttributeValue>
class itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >

A LabelObject with a generic attribute.

The attribute type is defined in the third template parameter. The attribute is then accessible with the GetAttribute() and SetAttribute methods or through the accessor itk::Functor::AttributeLabelObjectAccessor.

Author
Gaetan Lehmann. Biologie du Developpement et de la Reproduction, INRA de Jouy-en-Josas, France.

This implementation was taken from the Insight Journal paper: https://www.insight-journal.org/browse/publication/176

See also
LabelObject, ShapeLabelObject, StatisticsLabelObject

Definition at line 73 of file itkAttributeLabelObject.h.

Member Typedef Documentation

◆ AttributeValueType

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
using itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::AttributeValueType = TAttributeValue

Definition at line 104 of file itkAttributeLabelObject.h.

◆ ConstPointer

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
using itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::ConstPointer = SmartPointer<const Self>

Definition at line 83 of file itkAttributeLabelObject.h.

◆ ConstWeakPointer

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
using itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::ConstWeakPointer = WeakPointer<const Self>

Definition at line 84 of file itkAttributeLabelObject.h.

◆ IndexType

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
using itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::IndexType = typename Superclass::IndexType

Definition at line 96 of file itkAttributeLabelObject.h.

◆ LabelMapType

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
using itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::LabelMapType = LabelMap<Self>

Definition at line 92 of file itkAttributeLabelObject.h.

◆ LabelObjectType

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
using itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::LabelObjectType = typename Superclass::LabelObjectType

Definition at line 82 of file itkAttributeLabelObject.h.

◆ LabelType

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
using itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::LabelType = TLabel

Definition at line 98 of file itkAttributeLabelObject.h.

◆ LengthType

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
using itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::LengthType = typename Superclass::LengthType

Definition at line 102 of file itkAttributeLabelObject.h.

◆ LineType

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
using itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::LineType = typename Superclass::LineType

Definition at line 100 of file itkAttributeLabelObject.h.

◆ Pointer

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
using itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::Pointer = SmartPointer<Self>

Definition at line 81 of file itkAttributeLabelObject.h.

◆ Self

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
using itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::Self = AttributeLabelObject

Standard class type aliases

Definition at line 79 of file itkAttributeLabelObject.h.

◆ Superclass

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
using itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::Superclass = LabelObject<TLabel, VImageDimension>

Definition at line 80 of file itkAttributeLabelObject.h.

Constructor & Destructor Documentation

◆ AttributeLabelObject()

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::AttributeLabelObject ( )
inlineprotected

Definition at line 144 of file itkAttributeLabelObject.h.

Member Function Documentation

◆ CopyAllFrom()

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
template<typename TSourceLabelObject >
void itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::CopyAllFrom ( const TSourceLabelObject *  src)
inline

Definition at line 136 of file itkAttributeLabelObject.h.

◆ CopyAttributesFrom()

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
template<typename TSourceLabelObject >
void itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::CopyAttributesFrom ( const TSourceLabelObject *  src)
inline

◆ CreateAnother()

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
virtual::itk::LightObject::Pointer itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::CreateAnother ( ) const
virtual

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::LightObject.

◆ GetAttribute() [1/2]

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
AttributeValueType itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::GetAttribute ( )
inline

◆ GetAttribute() [2/2]

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
const AttributeValueType& itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::GetAttribute ( ) const
inline

◆ GetNameOfClass()

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
virtual const char* itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::LabelObject< TLabel, VImageDimension >.

◆ New()

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
static Pointer itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::New ( )
static

Method for creation through the object factory.

◆ PrintSelf()

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
void itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
inlineoverrideprotectedvirtual

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::LightObject.

Definition at line 151 of file itkAttributeLabelObject.h.

References itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::m_Attribute, and itk::LabelObject< TLabel, VImageDimension >::PrintSelf().

◆ SetAttribute()

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
void itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::SetAttribute ( const AttributeValueType v)
inline

Member Data Documentation

◆ ImageDimension

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
constexpr unsigned int itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::ImageDimension = VImageDimension
staticconstexpr

Definition at line 94 of file itkAttributeLabelObject.h.

◆ m_Attribute

template<typename TLabel , unsigned int VImageDimension, typename TAttributeValue >
AttributeValueType itk::AttributeLabelObject< TLabel, VImageDimension, TAttributeValue >::m_Attribute
private

The documentation for this class was generated from the following file: