+
+ //=============================================================
+ /// Initializes the attribute map i.e. creates the entries
+ void Node::InitializeAttributeMap()
+ {
+ // Initialize attributes
+ LevelDescriptor::AttributeDescriptorListType::const_iterator a;
+ for (a = GetTree()->GetAttributeDescriptorList(GetLevel()).begin();
+ a!= GetTree()->GetAttributeDescriptorList(GetLevel()).end();
+ ++a)
+ {
+ UnsafeSetAttribute( a->GetKey(), "" );
+ }
+ }
+ //=============================================================
+
+ //=============================================================
+ /// Returns the level descriptor of the node
+ const LevelDescriptor& Node::GetLevelDescriptor() const
+ {
+ return GetTree()->GetLevelDescriptor(GetLevel());
+ }
+
+ //=============================================================
+
+ //=============================================================
+ /// Returns the attribute descriptor of the passed parameter
+ const AttributeDescriptor& Node::GetAttributeDescriptor(const std::string& k)const
+ {
+ LevelDescriptor::AttributeDescriptorListType::const_iterator a;
+ for (a = GetTree()->GetAttributeDescriptorList(GetLevel()).begin();
+ a!= GetTree()->GetAttributeDescriptorList(GetLevel()).end();
+ ++a)
+ {
+
+ if(a->GetKey()==k)
+ {
+ return *a;
+ }
+
+ }
+ return *a;
+ }
+ //=============================================================
+
+ //=============================================================