OTB  9.0.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel > Class Template Reference

#include <otbAttributesMapLabelObjectWithClassLabel.h>

+ Inheritance diagram for otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >:
+ Collaboration diagram for otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >:

Public Types

typedef TClassLabel ClassLabelType
 
typedef itk::SmartPointer< const SelfConstPointer
 
typedef itk::WeakPointer< const SelfConstWeakPointer
 
typedef itk::LabelObject< TLabel, VImageDimension > LabelObjectType
 
typedef itk::SmartPointer< SelfPointer
 
typedef AttributesMapLabelObjectWithClassLabel Self
 
typedef AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue > Superclass
 
- Public Types inherited from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >
typedef AttributesMapType::const_iterator AttributesMapConstIteratorType
 
typedef AttributesMapType::iterator AttributesMapIteratorType
 
typedef std::map< std::string, AttributesValueTypeAttributesMapType
 
typedef TAttributesValue AttributesValueType
 
typedef itk::SmartPointer< const SelfConstPointer
 
typedef itk::WeakPointer< const SelfConstWeakPointer
 
typedef Superclass::IndexType IndexType
 
typedef itk::LabelMap< SelfLabelMapType
 
typedef Superclass::LabelObjectType LabelObjectType
 
typedef TLabel LabelType
 
typedef Superclass::LengthType LengthType
 
typedef Superclass::LineType LineType
 
typedef itk::SmartPointer< SelfPointer
 
typedef PolygonType::Pointer PolygonPointerType
 
typedef Polygon< double > PolygonType
 
typedef AttributesMapLabelObject Self
 
typedef itk::LabelObject< TLabel, VImageDimension > Superclass
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const char * GetNameOfClass () const
 
void SetClassLabel (const ClassLabelType &label)
 
- Public Member Functions inherited from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
void SetAttribute (const char *name, AttributesValueType value)
 
void SetAttribute (const std::string &name, AttributesValueType value)
 
AttributesValueType GetAttribute (const char *name) const
 
unsigned int GetNumberOfAttributes () const
 
std::vector< std::string > GetAvailableAttributes () const
 
const PolygonTypeGetPolygon () const
 
PolygonTypeGetPolygon ()
 
void SetPolygon (PolygonType *p)
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >
static Pointer New ()
 

Static Public Attributes

static const unsigned int ImageDimension = VImageDimension
 
- Static Public Attributes inherited from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >
static const unsigned int ImageDimension = VImageDimension
 
ClassLabelType m_ClassLabel
 
bool m_HasClassLabel
 
const ClassLabelTypeGetClassLabel () const
 
bool HasClassLabel () const
 
void RemoveClassLabel ()
 
void CopyAttributesFrom (const LabelObjectType *lo) override
 
 AttributesMapLabelObjectWithClassLabel ()
 
 ~AttributesMapLabelObjectWithClassLabel () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
 AttributesMapLabelObjectWithClassLabel (const Self &)=delete
 
void operator= (const Self &)=delete
 

Additional Inherited Members

- Protected Member Functions inherited from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >
 AttributesMapLabelObject ()
 
 ~AttributesMapLabelObject () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 

Detailed Description

template<class TLabel, unsigned int VImageDimension, class TAttributesValue, class TClassLabel>
class otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >

An AttributesMapLabelObject with an optional class label.

The label type is defined by the template parameter TClassLabel and accessible using the ClassLabelType typedef.

The HasClassLabel() method returns true if the LabelObject has a class label and false otherwise.

The SetClassLabel() method set the class label and set the internal flag m_HasClassLabel to true.

The GetClassLabel() method returns the class label or an exception if m_HasClassLabel is set to false.

The RemoveClassLabel() method set m_HasClassLabel to false and the class label value to a default value.

See also
LabelObject, ShapeLabelObject, StatisticsLabelObject

Definition at line 54 of file otbAttributesMapLabelObjectWithClassLabel.h.

Member Typedef Documentation

◆ ClassLabelType

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
typedef TClassLabel otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::ClassLabelType

Class label typedef

Definition at line 74 of file otbAttributesMapLabelObjectWithClassLabel.h.

◆ ConstPointer

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
typedef itk::SmartPointer<const Self> otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::ConstPointer

Definition at line 62 of file otbAttributesMapLabelObjectWithClassLabel.h.

◆ ConstWeakPointer

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
typedef itk::WeakPointer<const Self> otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::ConstWeakPointer

Definition at line 63 of file otbAttributesMapLabelObjectWithClassLabel.h.

◆ LabelObjectType

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
typedef itk::LabelObject<TLabel, VImageDimension> otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::LabelObjectType

Definition at line 60 of file otbAttributesMapLabelObjectWithClassLabel.h.

◆ Pointer

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
typedef itk::SmartPointer<Self> otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::Pointer

Definition at line 61 of file otbAttributesMapLabelObjectWithClassLabel.h.

◆ Self

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
typedef AttributesMapLabelObjectWithClassLabel otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::Self

Standard class typedefs

Definition at line 58 of file otbAttributesMapLabelObjectWithClassLabel.h.

◆ Superclass

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
typedef AttributesMapLabelObject<TLabel, VImageDimension, TAttributesValue> otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::Superclass

Definition at line 59 of file otbAttributesMapLabelObjectWithClassLabel.h.

Constructor & Destructor Documentation

◆ AttributesMapLabelObjectWithClassLabel() [1/2]

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::AttributesMapLabelObjectWithClassLabel ( )
inlineprotected

Constructor

Definition at line 125 of file otbAttributesMapLabelObjectWithClassLabel.h.

◆ ~AttributesMapLabelObjectWithClassLabel()

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::~AttributesMapLabelObjectWithClassLabel ( )
inlineoverrideprotected

Destructor

Definition at line 130 of file otbAttributesMapLabelObjectWithClassLabel.h.

◆ AttributesMapLabelObjectWithClassLabel() [2/2]

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::AttributesMapLabelObjectWithClassLabel ( const Self )
privatedelete

The class label

Member Function Documentation

◆ CopyAttributesFrom()

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
void otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::CopyAttributesFrom ( const LabelObjectType lo)
inlineoverridevirtual

◆ CreateAnother()

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
virtual::itk::LightObject::Pointer otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::CreateAnother ( void  ) const

◆ GetClassLabel()

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
const ClassLabelType& otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::GetClassLabel ( ) const
inline

Get the class label. Throws an exception if no class label is available

Definition at line 85 of file otbAttributesMapLabelObjectWithClassLabel.h.

◆ GetNameOfClass()

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
virtual const char* otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >.

◆ HasClassLabel()

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
bool otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::HasClassLabel ( ) const
inline
Returns
true if a class label is available

Definition at line 96 of file otbAttributesMapLabelObjectWithClassLabel.h.

◆ New()

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
static Pointer otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::New ( )
static

Method for creation through the object factory.

◆ operator=()

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
void otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::operator= ( const Self )
privatedelete

The class label

◆ PrintSelf()

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
void otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
inlineoverrideprotected

The printself method

Definition at line 135 of file otbAttributesMapLabelObjectWithClassLabel.h.

◆ RemoveClassLabel()

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
void otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::RemoveClassLabel ( )
inline

Invalidate the class label if any

Definition at line 102 of file otbAttributesMapLabelObjectWithClassLabel.h.

◆ SetClassLabel()

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
void otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::SetClassLabel ( const ClassLabelType label)
inline

Set the class label

Definition at line 77 of file otbAttributesMapLabelObjectWithClassLabel.h.

Member Data Documentation

◆ ImageDimension

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
const unsigned int otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::ImageDimension = VImageDimension
static

Definition at line 71 of file otbAttributesMapLabelObjectWithClassLabel.h.

◆ m_ClassLabel

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
ClassLabelType otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::m_ClassLabel
private

The class label

Definition at line 154 of file otbAttributesMapLabelObjectWithClassLabel.h.

◆ m_HasClassLabel

template<class TLabel , unsigned int VImageDimension, class TAttributesValue , class TClassLabel >
bool otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::m_HasClassLabel
private

Does the LabelObject have a class label ?

Definition at line 157 of file otbAttributesMapLabelObjectWithClassLabel.h.


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