Package pal.tree
Class SimpleTree
- java.lang.Object
-
- pal.tree.SimpleTree
-
- All Implemented Interfaces:
java.io.Serializable
,IdGroup
,Report
,Units
,UnitsProvider
,Tree
- Direct Known Subclasses:
ClusterTree
,NeighborJoiningTree
,ReadTree
,UPGMATree
public class SimpleTree extends java.lang.Object implements Tree, Report, Units, java.io.Serializable
data structure for a binary/non-binary rooted/unrooted trees- Version:
- $Id: SimpleTree.java,v 1.23 2002/12/05 04:27:28 matt Exp $
- Author:
- Alexei Drummond, Korbinian Strimmer
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface pal.misc.IdGroup
IdGroup.Utils
-
Nested classes/interfaces inherited from interface pal.tree.Tree
Tree.TreeBase
-
-
Field Summary
-
Fields inherited from interface pal.misc.Units
DAYS, EXPECTED_SUBSTITUTIONS, GENERATIONS, MONTHS, SAMPLE, SHORT_UNIT_NAMES, UNIT_NAMES, UNKNOWN, YEARS
-
-
Constructor Summary
Constructors Constructor Description SimpleTree()
constructor tree consisting solely of root nodeSimpleTree(Node r)
constructor taking a root nodeSimpleTree(Tree tree)
clone constructorSimpleTree(Tree tree, boolean keepIdentifiers)
clone constructorSimpleTree(Tree tree, LabelMapping lm)
clone constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
createNodeList()
count and list external and internal nodes and compute heights of each nodeNode
findNode(int num)
return node with number num (as displayed in ASCII tree)java.lang.Object
getAttribute(Node node, java.lang.String name)
Tree
getCopy()
Node
getExternalNode(int i)
Returns the ith external node.int
getExternalNodeCount()
Returns the number of external nodes.int
getIdCount()
Returns the number of identifiers in this groupIdentifier
getIdentifier(int i)
Returns the ith identifier.Node
getInternalNode(int i)
Returns the ith internal node.int
getInternalNodeCount()
Returns the number of internal nodes.Node
getRoot()
Returns the root node of this tree.int
getUnits()
Return the units that this tree is expressed in.void
report(java.io.PrintWriter out)
print human readable report (e.g., on parameters and associated model)void
reroot(int num)
make node with number num to root nodevoid
reroot(Node node)
make provided node the root nodevoid
setAttribute(Node node, java.lang.String name, java.lang.Object value)
Sets an named attribute for a given node.void
setIdentifier(int i, Identifier id)
Sets the ith identifier.void
setRoot(Node r)
Set a new node as root node.void
setUnits(int units)
Sets the units that this tree is expressed in.java.lang.String
toString()
int
whichIdNumber(java.lang.String s)
returns the index of the identifier with the given name.
-
-
-
Constructor Detail
-
SimpleTree
public SimpleTree()
constructor tree consisting solely of root node
-
SimpleTree
public SimpleTree(Node r)
constructor taking a root node
-
SimpleTree
public SimpleTree(Tree tree)
clone constructor
-
SimpleTree
public SimpleTree(Tree tree, boolean keepIdentifiers)
clone constructor
-
SimpleTree
public SimpleTree(Tree tree, LabelMapping lm)
clone constructor- Parameters:
lm
- - a label mapping use for translating the original label names into something else
-
-
Method Detail
-
getUnits
public final int getUnits()
Return the units that this tree is expressed in.- Specified by:
getUnits
in interfaceTree
- Specified by:
getUnits
in interfaceUnitsProvider
- Returns:
- the units relating to this object.
-
setUnits
public final void setUnits(int units)
Sets the units that this tree is expressed in.
-
getExternalNodeCount
public final int getExternalNodeCount()
Returns the number of external nodes.- Specified by:
getExternalNodeCount
in interfaceTree
- Returns:
- a count of the number of external nodes (tips) in this tree.
-
getExternalNode
public final Node getExternalNode(int i)
Returns the ith external node.- Specified by:
getExternalNode
in interfaceTree
- Returns:
- the ith external node in the tree.
-
getInternalNodeCount
public final int getInternalNodeCount()
Returns the number of internal nodes.- Specified by:
getInternalNodeCount
in interfaceTree
- Returns:
- a count of the number of internal nodes (and hence clades) in this tree.
-
getInternalNode
public final Node getInternalNode(int i)
Returns the ith internal node.- Specified by:
getInternalNode
in interfaceTree
- Returns:
- the ith internal node in the tree.
-
getRoot
public final Node getRoot()
Returns the root node of this tree.
-
setRoot
public final void setRoot(Node r)
Set a new node as root node.
-
createNodeList
public void createNodeList()
count and list external and internal nodes and compute heights of each node- Specified by:
createNodeList
in interfaceTree
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
findNode
public Node findNode(int num)
return node with number num (as displayed in ASCII tree)- Parameters:
num
- number of node- Returns:
- node
-
setAttribute
public void setAttribute(Node node, java.lang.String name, java.lang.Object value)
Sets an named attribute for a given node.- Specified by:
setAttribute
in interfaceTree
- Parameters:
node
- the node whose attribute is being set.name
- the name of the attribute.value
- the new value of the attribute.
-
getIdCount
public int getIdCount()
Description copied from interface:IdGroup
Returns the number of identifiers in this group- Specified by:
getIdCount
in interfaceIdGroup
-
getIdentifier
public Identifier getIdentifier(int i)
Description copied from interface:IdGroup
Returns the ith identifier.- Specified by:
getIdentifier
in interfaceIdGroup
-
setIdentifier
public void setIdentifier(int i, Identifier id)
Description copied from interface:IdGroup
Sets the ith identifier.- Specified by:
setIdentifier
in interfaceIdGroup
-
whichIdNumber
public int whichIdNumber(java.lang.String s)
Description copied from interface:IdGroup
returns the index of the identifier with the given name.- Specified by:
whichIdNumber
in interfaceIdGroup
-
getAttribute
public java.lang.Object getAttribute(Node node, java.lang.String name)
- Specified by:
getAttribute
in interfaceTree
- Parameters:
node
- the node being interrogated.name
- the name of the attribute of interest.- Returns:
- an object representing the named attributed for the numbered node.
-
reroot
public void reroot(int num)
make node with number num to root node- Parameters:
num
- number of node
-
reroot
public void reroot(Node node)
make provided node the root node- Parameters:
node
- the node to make the root.
-
report
public void report(java.io.PrintWriter out)
Description copied from interface:Report
print human readable report (e.g., on parameters and associated model)
-
-