Bio::Tree::Tree man page on Fedora

Man page or keyword search:  
man Server   31170 pages
apropos Keyword Search (all sections)
Output format
Fedora logo
[printable version]

Bio::Tree::Tree(3)    User Contributed Perl Documentation   Bio::Tree::Tree(3)

NAME
       Bio::Tree::Tree - An Implementation of TreeI interface.

SYNOPSIS
	   # 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 $root = $tree->get_root_node;

DESCRIPTION
       This object holds handles to Nodes which make up a tree.

IMPLEMENTATION NOTE
       This implementation of Bio::Tree::Tree contains Bio::Tree:::NodeI;
       mainly linked via the root node. As NodeI can potentially contain
       circular references (as nodes will need to refer to both parent and
       child nodes), Bio::Tree::Tree will remove those circular references
       when the object is garbage-collected. This has some side effects;
       primarily, one must keep the Tree in scope or have at least one
       reference to it if working with nodes. The fix is to count the
       references to the nodes and if it is greater than expected retain all
       of them, but it requires an additional prereq and thus may not be worth
       the effort.  This only shows up in minor edge cases, though (see Bug
       #2869).

       Example of issue:

	 # tree is not assigned to a variable, so passes from memory after
	 # root node is passed
	 my $root = Bio::TreeIO->new(-format => 'newick', -file => 'foo.txt')->next_tree
			->get_root_node;

	 # gets nothing, as all Node links are broken when Tree is garbage-collected above
	 my @descendents = $root->get_all_Descendents;

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:

	 http://bugzilla.open-bio.org/

AUTHOR - Jason Stajich
       Email jason@bioperl.org

CONTRIBUTORS
       Aaron Mackey amackey@virginia.edu Sendu Bala   bix@sendu.me.uk Mark A.
       Jensen maj@fortinbras.us

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

   new
	Title	: new
	Usage	: my $obj = Bio::Tree::Tree->new();
	Function: Builds a new Bio::Tree::Tree object
	Returns : Bio::Tree::Tree
	Args	: -root	    => L<Bio::Tree::NodeI> object which is the root
		    OR
		  -node	    => L<Bio::Tree::NodeI> object from which the root will be
			       determined

		  -nodelete => boolean, whether or not to try and cleanup all
					the nodes when this this tree goes out
					of scope.
		  -id	    => optional tree ID
		  -score    => optional tree score value

   nodelete
	Title	: nodelete
	Usage	: $obj->nodelete($newval)
	Function: Get/Set Boolean whether or not to delete the underlying
		  nodes when it goes out of scope.  By default this is false
		  meaning trees are cleaned up.
	Returns : boolean
	Args	: on set, new boolean value

   get_nodes
	Title	: get_nodes
	Usage	: my @nodes = $tree->get_nodes()
	Function: Return list of Bio::Tree::NodeI objects
	Returns : array of Bio::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

   set_root_node
	Title	: set_root_node
	Usage	: $tree->set_root_node($node)
	Function: Set the Root Node for the Tree
	Returns : Bio::Tree::NodeI
	Args	: Bio::Tree::NodeI

   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 : real
	Args	: none

   subtree_length
	Title	: subtree_length
	Usage	: my $subtree_size = $tree->subtree_length($internal_node)
	Function: Returns the sum of the length of all branches in a subtree
		  under the node. Calculates the size of the whole tree
		  without an argument (but only if root node is defined)
	Returns : real or undef
	Args	: Bio::Tree::NodeI object, defaults to the root node

   id
	Title	: id
	Usage	: my $id = $tree->id();
	Function: An id value for the tree
	Returns : scalar
	Args	: [optional] new value to set

   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)

   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

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

   as_text
	Title	: as_text
	Usage	: my $tree_as_string = $tree->as_text($format)
	Function: Returns the tree as a string representation in the
		  desired format (currently 'newick', 'nhx', or
		  'tabtree')
	Returns : scalar string
	Args	: format type as specified by Bio::TreeIO
	Note	: This method loads the Bio::TreeIO::$format module
		  on the fly, and commandeers the _write_tree_Helper
		  routine therein to create the tree string.

   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

perl v5.14.1			  2011-07-22		    Bio::Tree::Tree(3)
[top]

List of man pages available for Fedora

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net