Provided by: libbio-perl-perl_1.7.8-1_all bug

NAME

       Bio::Tree::TreeI - A Tree object suitable for lots of things, designed
         originally for Phylogenetic Trees.

SYNOPSIS

         # get a Bio::Tree::TreeI somehow
         # like from a TreeIO
         my $treeio = Bio::TreeIO->new(-format => 'newick', -file => 'treefile.dnd');
         my $tree   = $treeio->next_tree;
         my @nodes  = $tree->get_nodes;
         my @leaves = $tree->get_leaf_nodes;
         my $root   = $tree->get_root_node;

DESCRIPTION

       This object holds a pointer to the Root of a Tree which is a Bio::Tree::NodeI.

FEEDBACK

   Mailing Lists
       User feedback is an integral part of the evolution of this and other Bioperl modules. Send
       your comments and suggestions preferably to the Bioperl mailing list.  Your participation
       is much appreciated.

         bioperl-l@bioperl.org                  - General discussion
         http://bioperl.org/wiki/Mailing_lists  - About the mailing lists

   Support
       Please direct usage questions or support issues to the mailing list:

       bioperl-l@bioperl.org

       rather than to the module maintainer directly. Many experienced and reponsive experts will
       be able look at the problem and quickly address it. Please include a thorough description
       of the problem with code and data examples if at all possible.

   Reporting Bugs
       Report bugs to the Bioperl bug tracking system to help us keep track of the bugs and their
       resolution. Bug reports can be submitted via the web:

         https://github.com/bioperl/bioperl-live/issues

AUTHOR - Jason Stajich

       Email jason@bioperl.org

CONTRIBUTORS

       Aaron Mackey, amackey@virginia.edu Elia Stupka,  elia@fugu-sg.org Sendu Bala,
       bix@sendu.me.uk

APPENDIX

       The rest of the documentation details each of the object methods.  Internal methods are
       usually preceded with a _

   get_nodes
        Title   : get_nodes
        Usage   : my @nodes = $tree->get_nodes()
        Function: Return list of Tree::NodeI objects
        Returns : array of Tree::NodeI objects
        Args    : (named values) hash with one value
                  order => 'b|breadth' first order or 'd|depth' first order

   get_root_node
        Title   : get_root_node
        Usage   : my $node = $tree->get_root_node();
        Function: Get the Top Node in the tree, in this implementation
                  Trees only have one top node.
        Returns : Bio::Tree::NodeI object
        Args    : none

   number_nodes
        Title   : number_nodes
        Usage   : my $size = $tree->number_nodes
        Function: Find the number of nodes in the tree.
        Returns : int
        Args    : none

   total_branch_length
        Title   : total_branch_length
        Usage   : my $size = $tree->total_branch_length
        Function: Returns the sum of the length of all branches
        Returns : integer
        Args    : none

   height
        Title   : height
        Usage   : my $height = $tree->height
        Function: Gets the height of tree - this LOG_2($number_nodes)
                  WARNING: this is only true for strict binary trees.  The TreeIO
                  system is capable of building non-binary trees, for which this
                  method will currently return an incorrect value!!
        Returns : integer
        Args    : none

   id
        Title   : id
        Usage   : my $id = $tree->id();
        Function: An id value for the tree
        Returns : scalar
        Args    :

   score
        Title   : score
        Usage   : $obj->score($newval)
        Function: Sets the associated score with this tree
                  This is a generic slot which is probably best used
                  for log likelihood or other overall tree score
        Returns : value of score
        Args    : newvalue (optional)

   get_leaf_nodes
        Title   : get_leaf_nodes
        Usage   : my @leaves = $tree->get_leaf_nodes()
        Function: Returns the leaves (tips) of the tree
        Returns : Array of Bio::Tree::NodeI objects
        Args    : none

   Methods for associating Tag/Values with a Tree
       These methods associate tag/value pairs with a Tree

   set_tag_value
        Title   : set_tag_value
        Usage   : $tree->set_tag_value($tag,$value)
                  $tree->set_tag_value($tag,@values)
        Function: Sets a tag value(s) to a tree. Replaces old values.
        Returns : number of values stored for this tag
        Args    : $tag   - tag name
                  $value - value to store for the tag

   add_tag_value
        Title   : add_tag_value
        Usage   : $tree->add_tag_value($tag,$value)
        Function: Adds a tag value to a tree
        Returns : number of values stored for this tag
        Args    : $tag   - tag name
                  $value - value to store for the tag

   remove_tag
        Title   : remove_tag
        Usage   : $tree->remove_tag($tag)
        Function: Remove the tag and all values for this tag
        Returns : boolean representing success (0 if tag does not exist)
        Args    : $tag - tagname to remove

   remove_all_tags
        Title   : remove_all_tags
        Usage   : $tree->remove_all_tags()
        Function: Removes all tags
        Returns : None
        Args    : None

   get_all_tags
        Title   : get_all_tags
        Usage   : my @tags = $tree->get_all_tags()
        Function: Gets all the tag names for this Tree
        Returns : Array of tagnames
        Args    : None

   get_tag_values
        Title   : get_tag_values
        Usage   : my @values = $tree->get_tag_values($tag)
        Function: Gets the values for given tag ($tag)
        Returns : Array of values or empty list if tag does not exist
        Args    : $tag - tag name

   has_tag
        Title   : has_tag
        Usage   : $tree->has_tag($tag)
        Function: Boolean test if tag exists in the Tree
        Returns : Boolean
        Args    : $tag - tagname