edu.msu.cme.rdp.classifier.train
Class RawHierarchyTree

java.lang.Object
  extended by edu.msu.cme.rdp.classifier.train.RawHierarchyTree

public class RawHierarchyTree
extends java.lang.Object

A RawHierarchyTree holds the raw taxon and sequences information. A RawHierarchyTree can only have one type of children: child treenodes or child sequences.


Field Summary
private  int genusIndex
           
private  int leaveCount
           
private  java.lang.String name
           
private  RawHierarchyTree parent
           
private  java.util.Map subclasses
           
private  Taxonomy taxon
           
private  int[] wordOccurrence
           
 
Constructor Summary
RawHierarchyTree(java.lang.String n, RawHierarchyTree p, Taxonomy tax)
          Creates new RawHierarchyTree given the name and its parent.
 
Method Summary
private  void addParent(RawHierarchyTree p)
          Adds the parent HierarchyTree, also adds this node to the parent tree as a child.
private  void addSubclass(RawHierarchyTree c)
          Adds a child treenode.
 int getGenusIndex()
          Returns the genus index of this treenode.
 int getLeaveCount()
          Counts the number of sequence leaves below this tree.
 java.lang.String getName()
          Gets the name of the treenode.
 int getNonSingletonLeaveCount()
          Counts the number of non-singleton sequence leaves below this tree.
 RawHierarchyTree getParent()
          Gets the parent treenode.
 int getSizeofChildren()
          Gets the size of the children, either taxon children or sequence leaves.
 int getSizeofSubclasses()
          Gets the size of the child treenodes.
 RawHierarchyTree getSubclassbyName(java.lang.String n)
          Gets the child treenode with the given name.
 java.util.Collection getSubclasses()
          Gets the array of the subclasses if any.
 Taxonomy getTaxonomy()
          Returns the taxon object of this treenode.
 int getWordOccurrence(int wordIndex)
          Gets the word occurrence for the given word index.
 int getWordOccurrenceSize()
          Returns the size of the array wordOccurrence.
 void initWordOccurrence(ParsedRawSequence pSeq, float[] wordPriorArr)
          This method initiates the word occurrences from a sequence for the lowest level of the hierarchy tree.
 boolean isSingleton()
           
private  boolean isWordExist(int[] wordList, int wordIndex)
          Checks if this word already been added to the wordOccurrence.
 void releaseWordOccurrence()
          Resets the array wordOccurrence to null.
 void setGenusIndex(int i)
          Sets the genus index of this treenode.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

name

private java.lang.String name

leaveCount

private int leaveCount

parent

private RawHierarchyTree parent

subclasses

private java.util.Map subclasses

wordOccurrence

private int[] wordOccurrence

taxon

private Taxonomy taxon

genusIndex

private int genusIndex
Constructor Detail

RawHierarchyTree

public RawHierarchyTree(java.lang.String n,
                        RawHierarchyTree p,
                        Taxonomy tax)
Creates new RawHierarchyTree given the name and its parent. Note: a RawHierarchyTree can only have one type of children: child treenodes or child sequences. Usually the lowest ranked nodes contain the sequence leaves.

Method Detail

addParent

private void addParent(RawHierarchyTree p)
Adds the parent HierarchyTree, also adds this node to the parent tree as a child.


addSubclass

private void addSubclass(RawHierarchyTree c)
Adds a child treenode.


getName

public java.lang.String getName()
Gets the name of the treenode.


getParent

public RawHierarchyTree getParent()
Gets the parent treenode.


getSubclasses

public java.util.Collection getSubclasses()
Gets the array of the subclasses if any.


getSubclassbyName

public RawHierarchyTree getSubclassbyName(java.lang.String n)
Gets the child treenode with the given name.


getSizeofChildren

public int getSizeofChildren()
Gets the size of the children, either taxon children or sequence leaves.


getSizeofSubclasses

public int getSizeofSubclasses()
Gets the size of the child treenodes.


initWordOccurrence

public void initWordOccurrence(ParsedRawSequence pSeq,
                               float[] wordPriorArr)
                        throws java.io.IOException
This method initiates the word occurrences from a sequence for the lowest level of the hierarchy tree. Duplicate words from one sequence will be count only once.

Throws:
java.io.IOException

isWordExist

private boolean isWordExist(int[] wordList,
                            int wordIndex)
Checks if this word already been added to the wordOccurrence. Returns true if found.


getWordOccurrenceSize

public int getWordOccurrenceSize()
Returns the size of the array wordOccurrence.


getWordOccurrence

public int getWordOccurrence(int wordIndex)
Gets the word occurrence for the given word index.


releaseWordOccurrence

public void releaseWordOccurrence()
Resets the array wordOccurrence to null.


getLeaveCount

public int getLeaveCount()
Counts the number of sequence leaves below this tree.


isSingleton

public boolean isSingleton()

getNonSingletonLeaveCount

public int getNonSingletonLeaveCount()
Counts the number of non-singleton sequence leaves below this tree.


getTaxonomy

public Taxonomy getTaxonomy()
Returns the taxon object of this treenode.


setGenusIndex

public void setGenusIndex(int i)
Sets the genus index of this treenode.


getGenusIndex

public int getGenusIndex()
Returns the genus index of this treenode.