EisNode Compare3(EisNode, EisNode, EisNode, bool) - if bool set to true, will return the least of the 3 nodes, otherwise will return the greatest
EisNode Load(string, ClusterSummary) - loads an EisNode from file specified in string and uses the ClusterSummary for labelling purposes
Public Methods
EisNode() - Default constructor
int GetDepth() - returns the depth of this node ( > = 1)
EisNode Contains(string) - recursively checks this node for a node with the name string, returns the node if found, returns null if not
int CompareTo(EisNode) - compares to nodes to see if they are equivalent; that is, they have the same coordinate point
EisNode leftMost() - returns the lowest value of children nodes (see Rationale)
EisNode rightMost() - returns the lowest value of children nodes (see Rationale)
setCoordPts() - recursively sets the coordinate points for drawing. The terminal nodes have their coordinate points set based on their order in the file, but all nodes above them need to have them set with this function.
setDepths(int previousDepth) - recursively sets the depth for the given node and all of its children, but it must be told what depth it is being called from
Properties
CoordPt - the coordinate point for drawing. Assuming a horizontal layout (root node on left, children on right), this would be the x-coordinate
DataName - if the node is an endpoint, this is the data name given to it from the initial data set( "" otherwise)
Depth - depth level for the current node, a root node is at depth 1
IsTerm - true if this is a terminal node, false otherwise
Left - node to the 'left' of this one, or null
Right - node to the 'right' of this one, or null
Weight - node weight as read in from file
Name - name as read in from file (clustering name)
Tag - arbitrary object, used for grouping number
Protected Members
Type - EisNode.NodeType
MaximumCoordPt - Maximum coordinate point, only used for the root node when loading
Rationale
Because many operations on this data structure are recursive, functions that would have ordinarily been private have been made public.
'left' and 'right' come from a binary search tree where the leftmost value is the lowest, and the rightmost is the greatest. Unfortunately, the nature of the clustering node data structure is more complicated, but the names have been used for simplicity.
Remarks
Representation of a clustering node from a .gtr or .atr file