JAL-4134 tidied up refactoring and fix compilation errrors
[jalview.git] / src / jalview / datamodel / BinaryNode.java
index 6d392d4..5b55594 100755 (executable)
@@ -40,7 +40,7 @@ public class BinaryNode
 
   BinaryNode parent;
 
-  /** DOCUMENT ME!! */
+  /** Bootstrap value */
   public int bootstrap;
 
   /** DOCUMENT ME!! */
@@ -68,6 +68,7 @@ public class BinaryNode
   {
     left = right = parent = null;
     bootstrap = 0;
+    dist = 0;
   }
 
   /**
@@ -80,13 +81,28 @@ public class BinaryNode
    * @param name
    *          DOCUMENT ME!
    */
-  public BinaryNode(Object element, BinaryNode parent, String name)
+  public BinaryNode(Object element, BinaryNode parent, String name,
+          double dist)
   {
+    this();
     this.element = element;
     this.parent = parent;
     this.name = name;
+    this.dist = dist;
+  }
+
+  public BinaryNode(Object element, BinaryNode parent, String name,
+          double dist, int bootstrap)
+  {
+    this(element, parent, name, dist);
+    this.bootstrap = bootstrap;
+  }
 
-    left = right = null;
+  public BinaryNode(Object val, BinaryNode parent, String name, double dist,
+          int bootstrap, boolean dummy)
+  {
+    this(val, parent, name, dist, bootstrap);
+    this.dummy = dummy;
   }
 
   /**
@@ -322,18 +338,43 @@ public class BinaryNode
   }
 
   /**
+   * @param dummy
+   *          true if node is created for the representation of polytomous trees
+   */
+  public boolean isDummy()
+  {
+    return dummy;
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @param newstate
+   *          DOCUMENT ME!
+   * 
+   * @return DOCUMENT ME!
+   */
+  public boolean setDummy(boolean newstate)
+  {
+    boolean oldstate = dummy;
+    dummy = newstate;
+
+    return oldstate;
+  }
+
+  /**
    * 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;
   }
 }