JAL-4134 - refactor tree calculation code to work with binaryNode base type.
[jalview.git] / src / jalview / datamodel / BinaryNode.java
index c0ff0e4..6d392d4 100755 (executable)
@@ -20,6 +20,8 @@
  */
 package jalview.datamodel;
 
+import java.awt.Color;
+
 /**
  * DOCUMENT ME!
  * 
@@ -41,6 +43,24 @@ public class BinaryNode
   /** DOCUMENT ME!! */
   public int bootstrap;
 
+  /** DOCUMENT ME!! */
+  public double dist;
+
+  /** DOCUMENT ME!! */
+  public int count;
+
+  /** DOCUMENT ME!! */
+  public double height;
+
+  /** DOCUMENT ME!! */
+  public float ycount;
+
+  /** DOCUMENT ME!! */
+  public Color color = Color.black;
+
+  /** DOCUMENT ME!! */
+  public boolean dummy = false;
+
   /**
    * Creates a new BinaryNode object.
    */
@@ -300,4 +320,20 @@ public class BinaryNode
   {
     return bootstrap;
   }
+
+  /**
+   * ascends the tree but doesn't stop until a non-dummy node is discovered.
+   * 
+   */
+  public BinaryNode AscendTree()
+  {
+    BinaryNode c = this;
+  
+    do
+    {
+      c = c.parent();
+    } while ((c != null) && c.dummy);
+  
+    return c;
+  }
 }