OTB  6.1.0
Orfeo Toolbox
Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
otb::DataNode< TPrecision, VDimension, TValuePrecision > Class Template Reference

#include <otbDataNode.h>

+ Inheritance diagram for otb::DataNode< TPrecision, VDimension, TValuePrecision >:
+ Collaboration diagram for otb::DataNode< TPrecision, VDimension, TValuePrecision >:

Classes

struct  DataType
 

Public Types

typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef LineType::ConstPointer LineConstPointerType
 
typedef LineType::Pointer LinePointerType
 
typedef
otb::PolyLineParametricPathWithValue
< ValuePrecisionType,
VDimension > 
LineType
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::Point
< PrecisionType, VDimension > 
PointType
 
typedef PolygonType::ConstPointer PolygonConstPointerType
 
typedef
PolygonListType::ConstPointer 
PolygonListConstPointerType
 
typedef PolygonListType::Pointer PolygonListPointerType
 
typedef ObjectList< PolygonTypePolygonListType
 
typedef PolygonType::Pointer PolygonPointerType
 
typedef Polygon
< ValuePrecisionType
PolygonType
 
typedef TPrecision PrecisionType
 
typedef DataNode Self
 
typedef itk::Object Superclass
 
typedef TValuePrecision ValuePrecisionType
 
typedef
VertexListType::ConstPointer 
VertexListConstPointerType
 
typedef PolygonType::VertexListType VertexListType
 
- Public Types inherited from itk::Object
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef Object Self
 
typedef LightObject Superclass
 
- Public Types inherited from itk::LightObject
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef LightObject Self
 

Public Member Functions

void CopyFieldList (const DataNode *dataNode)
 
double EuclideanDistanceMetric (const DataNode *node)
 
double EuclideanDistanceMetric (const PointType point)
 
double GetFieldAsDouble (const std::string &key) const
 
int GetFieldAsInt (const std::string &key) const
 
std::string GetFieldAsString (const std::string &key) const
 
std::vector< std::string > GetFieldList () const
 
LinePointerType GetLine () const
 
std::string GetNodeTypeAsString () const
 
PointType GetPoint () const
 
PolygonPointerType GetPolygonExteriorRing () const
 
PolygonListPointerType GetPolygonInteriorRings () const
 
bool HasField (const std::string &key) const
 
bool Intersects (const DataNode *node)
 
bool IsCollectionFeature () const
 
bool IsDocument () const
 
bool IsFolder () const
 
bool IsLineFeature () const
 
bool IsMultiLineFeature () const
 
bool IsMultiPointFeature () const
 
bool IsMultiPolygonFeature () const
 
bool IsPointFeature () const
 
bool IsPolygonFeature () const
 
bool IsRoot () const
 
void SetFieldAsDouble (const std::string &key, double value)
 
void SetFieldAsInt (const std::string &key, int value)
 
void SetFieldAsString (const std::string &key, const std::string &value)
 
void SetLine (LineType *line)
 
void SetNodeType (NodeType type)
 
void SetPoint (PointType point)
 
void SetPolygonExteriorRing (PolygonType *polygon)
 
void SetPolygonInteriorRings (PolygonListType *polygonList)
 
bool Within (const DataNode *node)
 
virtual NodeType GetNodeType () const
 
virtual const char * GetNodeId () const
 
virtual void SetNodeId (const char *_arg)
 
- Public Member Functions inherited from itk::Object
unsigned long AddObserver (const EventObject &event, Command *)
 
unsigned long AddObserver (const EventObject &event, Command *) const
 
virtual void DebugOff () const
 
virtual void DebugOn () const
 
CommandGetCommand (unsigned long tag)
 
bool GetDebug () const
 
const MetaDataDictionaryGetMetaDataDictionary () const
 
MetaDataDictionaryGetMetaDataDictionary ()
 
virtual ModifiedTimeType GetMTime () const
 
virtual const std::string & GetObjectName () const
 
virtual const TimeStampGetTimeStamp () const
 
bool HasObserver (const EventObject &event) const
 
void InvokeEvent (const EventObject &)
 
void InvokeEvent (const EventObject &) const
 
virtual void Modified () const
 
virtual void Register () const override
 
void RemoveAllObservers ()
 
void RemoveObserver (unsigned long tag)
 
void SetDebug (bool debugFlag) const
 
void SetMetaDataDictionary (const MetaDataDictionary &rhs)
 
virtual void SetObjectName (std::string _arg)
 
virtual void SetReferenceCount (int) override
 
virtual void UnRegister () const noexceptoverride
 
- Public Member Functions inherited from itk::LightObject
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
 itkCloneMacro (Self)
 
void Print (std::ostream &os, Indent indent=0) const
 

Static Public Attributes

static const unsigned int Dimension = VDimension
 

Protected Member Functions

OGRGeometry * ConvertDataNodeToOGRGeometry (const DataNode *dataNode)
 
 DataNode ()
 
void PrintSelf (std::ostream &os, itk::Indent indent) const ITK_OVERRIDE
 
 ~DataNode () ITK_OVERRIDE
 
- Protected Member Functions inherited from itk::Object
 Object ()
 
bool PrintObservers (std::ostream &os, Indent indent) const
 
virtual void SetTimeStamp (const TimeStamp &time)
 
virtual ~Object ()
 
- 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 Member Functions

 DataNode (const Self &)
 
void operator= (const Self &)
 

Private Attributes

DataType m_Data
 
std::string m_NodeId
 
NodeType m_NodeType
 
static Pointer New ()
 
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const char * GetNameOfClass () const
 

Additional Inherited Members

- Static Public Member Functions inherited from itk::Object
static bool GetGlobalWarningDisplay ()
 
static void GlobalWarningDisplayOff ()
 
static void GlobalWarningDisplayOn ()
 
static Pointer New ()
 
static void SetGlobalWarningDisplay (bool flag)
 
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 
- Protected Attributes inherited from itk::LightObject
AtomicInt< int > m_ReferenceCount
 

Detailed Description

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
class otb::DataNode< TPrecision, VDimension, TValuePrecision >

This class represents a node of data in a vector data hierarchy.

A DataNode has a type represented by the NodeType enumeration. Depending on its type, it can have associated data such as Point, Line or Polygon.

A flag indicates if the data are valid or not.

A DataNode has also a dictionary of fields which can be used to store associated data. Depending on the writing vector data file format, fields will be used by the writing driver.

The three templates indicate

See Also
VectorData

Definition at line 75 of file otbDataNode.h.

Member Typedef Documentation

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef itk::SmartPointer<const Self> otb::DataNode< TPrecision, VDimension, TValuePrecision >::ConstPointer

Definition at line 83 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef LineType::ConstPointer otb::DataNode< TPrecision, VDimension, TValuePrecision >::LineConstPointerType

Definition at line 99 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef LineType::Pointer otb::DataNode< TPrecision, VDimension, TValuePrecision >::LinePointerType

Definition at line 98 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef otb::PolyLineParametricPathWithValue<ValuePrecisionType, VDimension> otb::DataNode< TPrecision, VDimension, TValuePrecision >::LineType

Definition at line 97 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef itk::SmartPointer<Self> otb::DataNode< TPrecision, VDimension, TValuePrecision >::Pointer

Definition at line 82 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef itk::Point<PrecisionType, VDimension> otb::DataNode< TPrecision, VDimension, TValuePrecision >::PointType

Internal data typedef

Definition at line 96 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef PolygonType::ConstPointer otb::DataNode< TPrecision, VDimension, TValuePrecision >::PolygonConstPointerType

Definition at line 104 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef PolygonListType::ConstPointer otb::DataNode< TPrecision, VDimension, TValuePrecision >::PolygonListConstPointerType

Definition at line 107 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef PolygonListType::Pointer otb::DataNode< TPrecision, VDimension, TValuePrecision >::PolygonListPointerType

Definition at line 106 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef ObjectList<PolygonType> otb::DataNode< TPrecision, VDimension, TValuePrecision >::PolygonListType

Definition at line 105 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef PolygonType::Pointer otb::DataNode< TPrecision, VDimension, TValuePrecision >::PolygonPointerType

Definition at line 103 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef Polygon<ValuePrecisionType> otb::DataNode< TPrecision, VDimension, TValuePrecision >::PolygonType

Definition at line 100 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef TPrecision otb::DataNode< TPrecision, VDimension, TValuePrecision >::PrecisionType

Template parameters typedefs

Definition at line 87 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef DataNode otb::DataNode< TPrecision, VDimension, TValuePrecision >::Self

Standard class typedef

Definition at line 80 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef itk::Object otb::DataNode< TPrecision, VDimension, TValuePrecision >::Superclass

Definition at line 81 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef TValuePrecision otb::DataNode< TPrecision, VDimension, TValuePrecision >::ValuePrecisionType

Definition at line 92 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef VertexListType::ConstPointer otb::DataNode< TPrecision, VDimension, TValuePrecision >::VertexListConstPointerType

Definition at line 102 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
typedef PolygonType::VertexListType otb::DataNode< TPrecision, VDimension, TValuePrecision >::VertexListType

Definition at line 101 of file otbDataNode.h.

Constructor & Destructor Documentation

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
otb::DataNode< TPrecision, VDimension, TValuePrecision >::DataNode ( )
protected

Clear all fields.Constructor

Definition at line 31 of file otbDataNode.txx.

References otb::ROOT.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
otb::DataNode< TPrecision, VDimension, TValuePrecision >::~DataNode ( )
inlineprotected

Destructor

Definition at line 318 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
otb::DataNode< TPrecision, VDimension, TValuePrecision >::DataNode ( const Self )
private

Member Function Documentation

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
OGRGeometry * otb::DataNode< TPrecision, VDimension, TValuePrecision >::ConvertDataNodeToOGRGeometry ( const DataNode< TPrecision, VDimension, TValuePrecision > *  dataNode)
protected
template<class TPrecision , unsigned int VDimension, class TValuePrecision >
void otb::DataNode< TPrecision, VDimension, TValuePrecision >::CopyFieldList ( const DataNode< TPrecision, VDimension, TValuePrecision > *  dataNode)

Copy the field list from a DataNode

Parameters
dataNodedatanode where to get the keywordlist to copy.

Definition at line 419 of file otbDataNode.txx.

References otb::VectorDataKeywordlist::CopyFieldList(), itk::Object::GetMetaDataDictionary(), and otb::MetaDataKey::VectorDataKeywordlistKey.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
virtual::itk::LightObject::Pointer otb::DataNode< TPrecision, VDimension, TValuePrecision >::CreateAnother ( void  ) const
virtual

Standard macro

Reimplemented from itk::Object.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
double otb::DataNode< TPrecision, VDimension, TValuePrecision >::EuclideanDistanceMetric ( const DataNode< TPrecision, VDimension, TValuePrecision > *  node)
Returns
the distance to a point

Definition at line 614 of file otbDataNode.txx.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
double otb::DataNode< TPrecision, VDimension, TValuePrecision >::EuclideanDistanceMetric ( const PointType  point)

Definition at line 627 of file otbDataNode.txx.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
double otb::DataNode< TPrecision, VDimension, TValuePrecision >::GetFieldAsDouble ( const std::string &  key) const

Returns the value associated with a field name.

Parameters
keyThe name of the field.
Returns
The value of the field. A default value is returned if the key was not found.

Definition at line 296 of file otbDataNode.txx.

References otb::VectorDataKeywordlist::GetFieldAsDouble(), and otb::MetaDataKey::VectorDataKeywordlistKey.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
int otb::DataNode< TPrecision, VDimension, TValuePrecision >::GetFieldAsInt ( const std::string &  key) const

Returns the value associated with a field name.

Parameters
keyThe name of the field.
Returns
The value of the field. A default value is returned if the key was not found.

Definition at line 343 of file otbDataNode.txx.

References otb::VectorDataKeywordlist::GetFieldAsInt(), and otb::MetaDataKey::VectorDataKeywordlistKey.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
std::string otb::DataNode< TPrecision, VDimension, TValuePrecision >::GetFieldAsString ( const std::string &  key) const

Returns the value associated with a field name.

Parameters
keyThe name of the field.
Returns
The value of the field. A default value is returned if the key was not found.

Definition at line 328 of file otbDataNode.txx.

References otb::VectorDataKeywordlist::GetFieldAsString(), and otb::MetaDataKey::VectorDataKeywordlistKey.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
std::vector< std::string > otb::DataNode< TPrecision, VDimension, TValuePrecision >::GetFieldList ( ) const
Returns
the field list in the node.

Definition at line 441 of file otbDataNode.txx.

References otb::VectorDataKeywordlist::GetFieldList(), and otb::MetaDataKey::VectorDataKeywordlistKey.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
DataNode< TPrecision, VDimension, TValuePrecision >::LinePointerType otb::DataNode< TPrecision, VDimension, TValuePrecision >::GetLine ( ) const

Get the line data, when valid.

Returns
The line.

Definition at line 113 of file otbDataNode.txx.

Referenced by otb::DataNode< TPrecision, VDimension, TValuePrecision >::ConvertDataNodeToOGRGeometry().

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
virtual const char* otb::DataNode< TPrecision, VDimension, TValuePrecision >::GetNameOfClass ( ) const
virtual

Standard macro

Reimplemented from itk::Object.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
virtual const char* otb::DataNode< TPrecision, VDimension, TValuePrecision >::GetNodeId ( ) const
virtual

Fields typedef Accessors

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
virtual NodeType otb::DataNode< TPrecision, VDimension, TValuePrecision >::GetNodeType ( ) const
virtual
template<class TPrecision , unsigned int VDimension, class TValuePrecision >
std::string otb::DataNode< TPrecision, VDimension, TValuePrecision >::GetNodeTypeAsString ( ) const
template<class TPrecision , unsigned int VDimension, class TValuePrecision >
DataNode< TPrecision, VDimension, TValuePrecision >::PointType otb::DataNode< TPrecision, VDimension, TValuePrecision >::GetPoint ( ) const

Get the point data, when valid.

Returns
The point.

Definition at line 97 of file otbDataNode.txx.

Referenced by otb::DataNode< TPrecision, VDimension, TValuePrecision >::ConvertDataNodeToOGRGeometry().

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
DataNode< TPrecision, VDimension, TValuePrecision >::PolygonPointerType otb::DataNode< TPrecision, VDimension, TValuePrecision >::GetPolygonExteriorRing ( ) const

Get the polygon exterior ring data, when valid.

Returns
The polygon exterior ring.

Definition at line 130 of file otbDataNode.txx.

Referenced by otb::DataNode< TPrecision, VDimension, TValuePrecision >::ConvertDataNodeToOGRGeometry().

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
DataNode< TPrecision, VDimension, TValuePrecision >::PolygonListPointerType otb::DataNode< TPrecision, VDimension, TValuePrecision >::GetPolygonInteriorRings ( ) const

Get the polygon interior rings data, when valid.

Returns
The polygon interior rings list.

Definition at line 147 of file otbDataNode.txx.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
bool otb::DataNode< TPrecision, VDimension, TValuePrecision >::HasField ( const std::string &  key) const

Remove the field associated with the given key, if possible.

Parameters
keyThe name of the field.
Returns
True if the node contains the field named after the given key.
Parameters
keyThe name of the field.

Definition at line 376 of file otbDataNode.txx.

References otb::VectorDataKeywordlist::HasField(), and otb::MetaDataKey::VectorDataKeywordlistKey.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
bool otb::DataNode< TPrecision, VDimension, TValuePrecision >::Intersects ( const DataNode< TPrecision, VDimension, TValuePrecision > *  node)
Returns
true if the two datanodes intersects

Definition at line 644 of file otbDataNode.txx.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
bool otb::DataNode< TPrecision, VDimension, TValuePrecision >::IsCollectionFeature ( ) const
Returns
True if node type is FEATURE_COLLECTION.

Definition at line 533 of file otbDataNode.txx.

References otb::FEATURE_COLLECTION.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
bool otb::DataNode< TPrecision, VDimension, TValuePrecision >::IsDocument ( ) const
Returns
True if node type is DOCUMENT.

Definition at line 466 of file otbDataNode.txx.

References otb::DOCUMENT.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
bool otb::DataNode< TPrecision, VDimension, TValuePrecision >::IsFolder ( ) const
Returns
True if node type is FOLDER.

Definition at line 480 of file otbDataNode.txx.

References otb::FOLDER.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
bool otb::DataNode< TPrecision, VDimension, TValuePrecision >::IsLineFeature ( ) const
Returns
True if node type is FEATURE_LINE.

Definition at line 494 of file otbDataNode.txx.

References otb::FEATURE_LINE.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
bool otb::DataNode< TPrecision, VDimension, TValuePrecision >::IsMultiLineFeature ( ) const
Returns
True if node type is FEATURE_MULTILINE.

Definition at line 517 of file otbDataNode.txx.

References otb::FEATURE_MULTILINE.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
bool otb::DataNode< TPrecision, VDimension, TValuePrecision >::IsMultiPointFeature ( ) const
Returns
True if node type is FEATURE_MULTIPOINT.

Definition at line 509 of file otbDataNode.txx.

References otb::FEATURE_MULTIPOINT.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
bool otb::DataNode< TPrecision, VDimension, TValuePrecision >::IsMultiPolygonFeature ( ) const
Returns
True if node type is FEATURE_MULTIPOLYGON.

Definition at line 525 of file otbDataNode.txx.

References otb::FEATURE_MULTIPOLYGON.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
bool otb::DataNode< TPrecision, VDimension, TValuePrecision >::IsPointFeature ( ) const
Returns
True if node type is FEATURE_POINT.

Definition at line 487 of file otbDataNode.txx.

References otb::FEATURE_POINT.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
bool otb::DataNode< TPrecision, VDimension, TValuePrecision >::IsPolygonFeature ( ) const
Returns
True if node type is FEATURE_POLYGON.

Definition at line 501 of file otbDataNode.txx.

References otb::FEATURE_POLYGON.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
bool otb::DataNode< TPrecision, VDimension, TValuePrecision >::IsRoot ( ) const
Returns
True if node type is ROOT.

Definition at line 473 of file otbDataNode.txx.

References otb::ROOT.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
static Pointer otb::DataNode< TPrecision, VDimension, TValuePrecision >::New ( )
static

Standard macro

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
void otb::DataNode< TPrecision, VDimension, TValuePrecision >::operator= ( const Self )
private
template<class TPrecision , unsigned int VDimension, class TValuePrecision >
void otb::DataNode< TPrecision, VDimension, TValuePrecision >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
protectedvirtual

PrintSelf method

Reimplemented from itk::Object.

Definition at line 163 of file otbDataNode.txx.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
void otb::DataNode< TPrecision, VDimension, TValuePrecision >::SetFieldAsDouble ( const std::string &  key,
double  value 
)

Add a field to the node.

Parameters
keyThe name of the field.
valueThe value of the field.

Definition at line 280 of file otbDataNode.txx.

References otb::VectorDataKeywordlist::SetFieldAsDouble(), and otb::MetaDataKey::VectorDataKeywordlistKey.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
void otb::DataNode< TPrecision, VDimension, TValuePrecision >::SetFieldAsInt ( const std::string &  key,
int  value 
)

Add a field to the node.

Parameters
keyThe name of the field.
valueThe value of the field.

Definition at line 265 of file otbDataNode.txx.

References otb::VectorDataKeywordlist::SetFieldAsInt(), and otb::MetaDataKey::VectorDataKeywordlistKey.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
void otb::DataNode< TPrecision, VDimension, TValuePrecision >::SetFieldAsString ( const std::string &  key,
const std::string &  value 
)

Add a field to the node.

Parameters
keyThe name of the field.
valueThe value of the field.

Definition at line 250 of file otbDataNode.txx.

References otb::VectorDataKeywordlist::SetFieldAsString(), and otb::MetaDataKey::VectorDataKeywordlistKey.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
void otb::DataNode< TPrecision, VDimension, TValuePrecision >::SetLine ( LineType line)

Set the line data. Node type is automatically set to FEATURE_LINE.

Parameters
lineThe line.

Definition at line 59 of file otbDataNode.txx.

References otb::FEATURE_LINE.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
virtual void otb::DataNode< TPrecision, VDimension, TValuePrecision >::SetNodeId ( const char *  _arg)
virtual

Fields typedef Accessors

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
void otb::DataNode< TPrecision, VDimension, TValuePrecision >::SetNodeType ( NodeType  type)

Set the node type.

Parameters
typenode type.

Definition at line 41 of file otbDataNode.txx.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
void otb::DataNode< TPrecision, VDimension, TValuePrecision >::SetPoint ( PointType  point)

Set the point data. Node type is automatically set to FEATURE_POINT.

Parameters
pointthe point.

Definition at line 50 of file otbDataNode.txx.

References otb::FEATURE_POINT.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
void otb::DataNode< TPrecision, VDimension, TValuePrecision >::SetPolygonExteriorRing ( PolygonType polygon)

Set the polygon exterior ring. Node type is automatically set to FEATURE_POLYGON.

Parameters
polygonThe polygon exterior ring.

Definition at line 68 of file otbDataNode.txx.

References otb::FEATURE_POLYGON.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
void otb::DataNode< TPrecision, VDimension, TValuePrecision >::SetPolygonInteriorRings ( PolygonListType polygonList)

Set the polygon interior rings. Node type is automatically set to FEATURE_POLYGON.

Parameters
polygonListThe polygon interior rings list.

Definition at line 82 of file otbDataNode.txx.

References otb::FEATURE_POLYGON.

template<class TPrecision , unsigned int VDimension, class TValuePrecision >
bool otb::DataNode< TPrecision, VDimension, TValuePrecision >::Within ( const DataNode< TPrecision, VDimension, TValuePrecision > *  node)
Returns
true if the two datanodes intersects

Definition at line 657 of file otbDataNode.txx.

Member Data Documentation

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
const unsigned int otb::DataNode< TPrecision, VDimension, TValuePrecision >::Dimension = VDimension
static

Definition at line 93 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
DataType otb::DataNode< TPrecision, VDimension, TValuePrecision >::m_Data
private

The data associated with the node

Definition at line 346 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
std::string otb::DataNode< TPrecision, VDimension, TValuePrecision >::m_NodeId
private

The node id

Definition at line 343 of file otbDataNode.h.

template<class TPrecision = double, unsigned VDimension = 2, class TValuePrecision = double>
NodeType otb::DataNode< TPrecision, VDimension, TValuePrecision >::m_NodeType
private

The node type

Definition at line 340 of file otbDataNode.h.


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