de.lmu.ifi.dbs.elki.utilities.datastructures.hierarchy
Interface Hierarchical<O>

Type Parameters:
O - Object type in hierarchy
All Known Implementing Classes:
Cluster

public interface Hierarchical<O>

Interface for objects with an internal hierarchy interface. Note that the object can chose to delegate the hierarchy to an external hierarchy.


Method Summary
 List<O> getChildren()
          Get children list.
 List<O> getParents()
          Get parents list.
 boolean isHierarchical()
          Test for hierarchical properties
 IterableIterator<O> iterAncestors()
          Iterate ancestors (recursive parents)
 IterableIterator<O> iterDescendants()
          Iterate descendants (recursive children)
 int numChildren()
          Get number of children
 int numParents()
          Get number of parents
 

Method Detail

isHierarchical

boolean isHierarchical()
Test for hierarchical properties

Returns:
hierarchical data model.

numChildren

int numChildren()
Get number of children

Returns:
number of children

getChildren

List<O> getChildren()
Get children list. Resulting list MAY be modified. Result MAY be null, if the model is not hierarchical.

Returns:
list of children

iterDescendants

IterableIterator<O> iterDescendants()
Iterate descendants (recursive children)

Returns:
iterator for descendants

numParents

int numParents()
Get number of parents

Returns:
number of parents

getParents

List<O> getParents()
Get parents list. Resulting list MAY be modified. Result MAY be null, if the model is not hierarchical.

Returns:
list of parents

iterAncestors

IterableIterator<O> iterAncestors()
Iterate ancestors (recursive parents)

Returns:
iterator for ancestors

Release 0.4.0 (2011-09-20_1324)