![]() |
Orfeo Toolbox
3.16
|
An AttributesMapLabelObject with an optional class label. More...
#include <otbAttributesMapLabelObjectWithClassLabel.h>
Inheritance diagram for otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >:
Collaboration diagram for otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >:Public Member Functions | |
| void | AddIndex (const IndexType &idx) |
| void | AddLine (const IndexType &idx, const LengthType &length) |
| void | AddLine (const LineType &line) |
| void | CopyAllFrom (const Self *src) |
| virtual void | CopyAttributesFrom (const LabelObjectType *lo) |
| virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
| virtual void | Delete () |
| bool | Empty () const |
| AttributesValueType | GetAttribute (const char *name) const |
| std::vector< std::string > | GetAvailableAttributes () const |
| const ClassLabelType & | GetClassLabel () const |
| IndexType | GetIndex (SizeValueType offset) const |
| const LabelType & | GetLabel () const |
| const LineType & | GetLine (SizeValueType i) const |
| LineType & | GetLine (SizeValueType i) |
| const LineContainerType & | GetLineContainer () const |
| LineContainerType & | GetLineContainer () |
| virtual const char * | GetNameOfClass () const |
| unsigned int | GetNumberOfAttributes () const |
| SizeValueType | GetNumberOfLines () const |
| const PolygonType * | GetPolygon () const |
| PolygonType * | GetPolygon () |
| virtual int | GetReferenceCount () const |
| bool | HasClassLabel () const |
| bool | HasIndex (const IndexType &idx) const |
| void | Optimize () |
| void | Print (std::ostream &os, Indent indent=0) const |
| virtual void | Register () const |
| void | RemoveClassLabel () |
| void | SetAttribute (const char *name, AttributesValueType value) |
| void | SetAttribute (const std::string &name, AttributesValueType value) |
| void | SetClassLabel (const ClassLabelType &label) |
| void | SetLabel (const LabelType &label) |
| void | SetLineContainer (const LineContainerType &lineContainer) |
| void | SetPolygon (PolygonType *p) |
| virtual void | SetReferenceCount (int) |
| SizeValueType | Size () const |
| virtual void | UnRegister () const |
Static Public Member Functions | |
| static void | BreakOnError () |
| static AttributeType | GetAttributeFromName (const std::string &s) |
| static std::string | GetNameFromAttribute (const AttributeType &a) |
| static Pointer | New () |
Static Public Attributes | |
| static const unsigned int | ImageDimension = VImageDimension |
| static const AttributeType | LABEL = 0 |
Protected Types | |
| typedef int | InternalReferenceCountType |
Protected Member Functions | |
| AttributesMapLabelObjectWithClassLabel () | |
| virtual | ~AttributesMapLabelObjectWithClassLabel () |
| virtual void | PrintHeader (std::ostream &os, Indent indent) const |
| void | PrintSelf (std::ostream &os, itk::Indent indent) const |
| virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
Protected Attributes | |
| InternalReferenceCountType | m_ReferenceCount |
| SimpleFastMutexLock | m_ReferenceCountLock |
Private Member Functions | |
| AttributesMapLabelObjectWithClassLabel (const Self &) | |
| void | operator= (const Self &) |
Private Attributes | |
| ClassLabelType | m_ClassLabel |
| bool | m_HasClassLabel |
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.
Definition at line 49 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
inherited |
Definition at line 191 of file otbAttributesMapLabelObject.h.
|
inherited |
Definition at line 190 of file otbAttributesMapLabelObject.h.
|
inherited |
Map container typedefs.
Definition at line 189 of file otbAttributesMapLabelObject.h.
|
inherited |
Definition at line 180 of file otbAttributesMapLabelObject.h.
|
inherited |
Reimplemented in itk::StatisticsLabelObject< TLabel, VImageDimension >, and itk::ShapeLabelObject< TLabel, VImageDimension >.
Definition at line 79 of file itkLabelObject.h.
| typedef TClassLabel otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::ClassLabelType |
Class label typedef
Definition at line 70 of file otbAttributesMapLabelObjectWithClassLabel.h.
| typedef itk::SmartPointer<const Self> otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::ConstPointer |
Reimplemented from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >.
Definition at line 58 of file otbAttributesMapLabelObjectWithClassLabel.h.
| typedef itk::WeakPointer<const Self> otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::ConstWeakPointer |
Reimplemented from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >.
Definition at line 59 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
inherited |
Reimplemented from itk::LabelObject< TLabel, VImageDimension >.
Definition at line 183 of file otbAttributesMapLabelObject.h.
|
protectedinherited |
Define the type of the reference count according to the target. This allows the use of atomic operations
Definition at line 137 of file itkLightObject.h.
|
inherited |
Type of a label map using an AttributesMapLabelObject.
Definition at line 176 of file otbAttributesMapLabelObject.h.
| typedef itk::LabelObject<TLabel, VImageDimension> otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::LabelObjectType |
Reimplemented from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >.
Definition at line 56 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
inherited |
Template parameters typedef.
Reimplemented from itk::LabelObject< TLabel, VImageDimension >.
Definition at line 179 of file otbAttributesMapLabelObject.h.
|
inherited |
Reimplemented from itk::LabelObject< TLabel, VImageDimension >.
Definition at line 185 of file otbAttributesMapLabelObject.h.
|
inherited |
Reimplemented from itk::LabelObject< TLabel, VImageDimension >.
Definition at line 186 of file otbAttributesMapLabelObject.h.
|
inherited |
Reimplemented from itk::LabelObject< TLabel, VImageDimension >.
Definition at line 184 of file otbAttributesMapLabelObject.h.
| typedef itk::SmartPointer<Self> otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::Pointer |
Reimplemented from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >.
Definition at line 57 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
inherited |
Definition at line 195 of file otbAttributesMapLabelObject.h.
|
inherited |
Definition at line 194 of file otbAttributesMapLabelObject.h.
| typedef AttributesMapLabelObjectWithClassLabel otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::Self |
Standard class typedefs
Reimplemented from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >.
Definition at line 53 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
inherited |
Definition at line 80 of file itkLabelObject.h.
| typedef AttributesMapLabelObject<TLabel, VImageDimension, TAttributesValue> otb::AttributesMapLabelObjectWithClassLabel< TLabel, VImageDimension, TAttributesValue, TClassLabel >::Superclass |
Reimplemented from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >.
Definition at line 55 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
inlineprotected |
Constructor
Definition at line 120 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
inlineprotectedvirtual |
Destructor
Definition at line 123 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
private |
|
inherited |
Add an index to the object. If the index is already in the object, the index can be found several time in the object.
Definition at line 106 of file itkLabelObject.txx.
References itk::LabelObjectLine< VImageDimension >::GetLength(), itk::LabelObjectLine< VImageDimension >::IsNextIndex(), and itk::LabelObjectLine< VImageDimension >::SetLength().
|
inherited |
Add a new line to the object, without any check.
Definition at line 128 of file itkLabelObject.txx.
|
inherited |
Add a new line to the object, without any check.
Definition at line 140 of file itkLabelObject.txx.
|
staticinherited |
This method is called when itkExceptionMacro executes. It allows the debugger to break on error.
Definition at line 149 of file itkLightObject.cxx.
|
inherited |
Copy the lines, the label and the attributes from another node.
Definition at line 252 of file itkLabelObject.txx.
References NULL.
|
inlinevirtual |
This method is overloaded to add the copy of the attributes map.
Reimplemented from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >.
Definition at line 103 of file otbAttributesMapLabelObjectWithClassLabel.h.
References NULL.
|
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 otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >.
|
virtualinherited |
Delete an itk object. This method should always be used to delete an object when the new operator was used to create it. Using the C delete method will not work with reference counting.
Delete a itk object. This method should always be used to delete an object when the new operator was used to create it. Using the C++ delete method will not work with reference counting.
Definition at line 88 of file itkLightObject.cxx.
|
inherited |
Definition at line 206 of file itkLabelObject.txx.
|
inlineinherited |
Returns the attribute corresponding to name
Definition at line 218 of file otbAttributesMapLabelObject.h.
|
staticinherited |
Reimplemented in itk::StatisticsLabelObject< TLabel, VImageDimension >, and itk::ShapeLabelObject< TLabel, VImageDimension >.
Definition at line 37 of file itkLabelObject.txx.
|
inlineinherited |
Returns the list of available attributes
Definition at line 242 of file otbAttributesMapLabelObject.h.
|
inline |
Get the class label. Throws an exception if no class label is available
Definition at line 81 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
inherited |
Definition at line 213 of file itkLabelObject.txx.
References itk::Index< VIndexDimension >::GetIndex().
|
inherited |
Set/Get the label associated with the object.
Set/Get the label associated with that object.
Definition at line 66 of file itkLabelObject.txx.
|
inherited |
Definition at line 178 of file itkLabelObject.txx.
|
inherited |
Definition at line 185 of file itkLabelObject.txx.
|
inherited |
Return the line container of this object
Definition at line 149 of file itkLabelObject.txx.
|
inherited |
Definition at line 156 of file itkLabelObject.txx.
|
staticinherited |
Reimplemented in itk::ShapeLabelObject< TLabel, VImageDimension >.
Definition at line 50 of file itkLabelObject.txx.
|
virtual |
Run-time type information (and related methods).
Reimplemented from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >.
|
inlineinherited |
Returns the total number of attributes
Definition at line 234 of file otbAttributesMapLabelObject.h.
|
inherited |
Definition at line 170 of file itkLabelObject.txx.
|
inlineinherited |
Return the polygon (const version)
Definition at line 273 of file otbAttributesMapLabelObject.h.
|
inlineinherited |
Return the polygon (non const version)
Definition at line 279 of file otbAttributesMapLabelObject.h.
|
inlinevirtualinherited |
Gets the reference count on this object.
Definition at line 105 of file itkLightObject.h.
|
inline |
Definition at line 91 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
inherited |
Return true if the object contain the given index and false otherwise. Worst case complexity is O(L) where L is the number of lines in the object.
Definition at line 85 of file itkLabelObject.txx.
|
static |
Method for creation through the object factory.
Reimplemented from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >.
|
private |
Reimplemented from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >.
|
inherited |
Reorder the lines, merge the touching lines and ensure that no pixel is covered by two lines
Definition at line 265 of file itkLabelObject.txx.
References itk::LabelObjectLine< VImageDimension >::GetIndex(), itk::Index< VIndexDimension >::GetIndex(), and itk::LabelObjectLine< VImageDimension >::GetLength().
|
inherited |
Cause the object to print itself out.
Avoid DLL boundary problems. This function will be common to all itk objects. It just calls the header/self/trailer virtual print methods, which can be overriden by subclasses (any itk object).
Definition at line 135 of file itkLightObject.cxx.
References itk::Indent::GetNextIndent().
Referenced by itk::operator<<().
|
protectedvirtualinherited |
Define a default print header for all objects.
Definition at line 320 of file itkLightObject.cxx.
|
inlineprotectedvirtual |
The printself method
Reimplemented from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >.
Definition at line 126 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
protectedvirtualinherited |
Define a default print trailer for all objects.
Definition at line 331 of file itkLightObject.cxx.
|
virtualinherited |
Increase the reference count (mark as used by another object).
Reimplemented in itk::ExceptionObject::ReferenceCountedExceptionData, and itk::Object.
Definition at line 160 of file itkLightObject.cxx.
|
inline |
Invalidate the class label if any
Definition at line 97 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
inlineinherited |
Set an attribute value. If the key name already exists in the map, the value is overwritten.
Definition at line 201 of file otbAttributesMapLabelObject.h.
|
inlineinherited |
Set an attribute value. If the key name already exists in the map, the value is overwritten.
Definition at line 210 of file otbAttributesMapLabelObject.h.
|
inline |
Set the class label
Definition at line 73 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
inherited |
Definition at line 73 of file itkLabelObject.txx.
|
inherited |
Definition at line 163 of file itkLabelObject.txx.
|
inlineinherited |
Set the polygon
Definition at line 285 of file otbAttributesMapLabelObject.h.
|
virtualinherited |
Sets the reference count on this object. This is a dangerous method, use it with care.
Sets the reference count (use with care)
Reimplemented in itk::Object.
Definition at line 244 of file itkLightObject.cxx.
|
inherited |
Definition at line 192 of file itkLabelObject.txx.
|
virtualinherited |
Decrease the reference count (release by another object).
Reimplemented in itk::ExceptionObject::ReferenceCountedExceptionData, and itk::Object.
Definition at line 192 of file itkLightObject.cxx.
Referenced by itk::LightObject::New().
|
static |
Reimplemented from otb::AttributesMapLabelObject< TLabel, VImageDimension, TAttributesValue >.
Definition at line 67 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
staticinherited |
Definition at line 82 of file itkLabelObject.h.
|
private |
The class label
Definition at line 144 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
private |
Does the LabelObject have a class label ?
Definition at line 147 of file otbAttributesMapLabelObjectWithClassLabel.h.
|
mutableprotectedinherited |
Number of uses of this object by other objects.
Definition at line 141 of file itkLightObject.h.
|
mutableprotectedinherited |
Mutex lock to protect modification to the reference count
Definition at line 144 of file itkLightObject.h.