namespace tree
{
/**
- * \ingroup Model
+ * \ingroup Tree
*/
//=====================================================================
/// Descriptor of a level of a Tree (name, attributes, ...)
~LevelDescriptor() {}
/// Returns the name of the level
- const std::string& GetName() { return mName; }
+ const std::string& GetName() const { return mName; }
/// Returns the number of attributes of the level
- unsigned int GetNumberOfAttributes()
+ unsigned int GetNumberOfAttributes() const
{ return mAttributeDescriptorList.size(); }
/// Adds the AttributeDescriptor to the list
- /// WARNING : You MUST use this method and NOT push_back directly in list
- /// ad IdentifierList and LabelList are also updated
- void Add(AttributeDescriptor);
+ void Add(const AttributeDescriptor&);
- /// The type of attribute container
+ /// The type of attribute container
typedef std::vector<AttributeDescriptor> AttributeDescriptorListType;
- /// Returns the list of AttributeDescriptor
- //AttributeDescriptorListType& GetAttributeDescriptorList()
- //{ return mAttributeDescriptorList; }
+
/// Returns the list of AttributeDescriptor (const)
const AttributeDescriptorListType& GetAttributeDescriptorList() const
{ return mAttributeDescriptorList; }
- /// \return The list of attributes with flag IDENTIFIER set
- const std::vector<std::string>& GetIdentifierList() const
+ /// \return The list of attributes with flag IDENTIFIER set
+ const std::vector<std::string>& GetIdentifierList() const
{ return mIdentifierList; }
/// \return The list of attributes with flag LABEL set
const std::vector<std::string>& GetLabelList() const