Bio::Graph Edge
SummaryIncluded librariesPackage variablesSynopsisDescriptionGeneral documentationMethods
Summary
Bio::Graph::Edge - encapsulation of an interaction between 2 Bio::Seq objects
Package variables
No package variables defined.
Inherit
Bio::IdentifiableI Bio::Root::Root
Synopsis
  ## get an interaction between two nodes ##
my $edge = $gr->edge( $gr->nodes_by_id('P12345'), $gr->nodes_by_id('P23456')); my $id = $edge->object_id(); my $wt = $edge->weight(); my @nodes = $edge->nodes();
Description
This class contains information about a bimolecular interaction.
At present it just contains data about its component node, a weight
(if set) and an identifier. Subclasses could hold more specific
information.
Methods
newDescriptionCode
weightDescriptionCode
object_idDescriptionCode
nodesDescriptionCode
Methods description
newcode    nextTop
 Name       : new
Purpose : constructor for an edge object
Usage : my $edge = Bio::Graph::Edge->new(nodes => [$node1,$node2]
id => $id);
$graph->add_edge($edge);
Returns : a new Bio::Graph::Edge object
Arguments : hash nodes => array reference of 2 nodes
id => edge id
weight(optional) => weight score.
weightcodeprevnextTop
 Name      : weight
Purpose : get/setter for weight score
Usage : my $weight = $edge->weight();
Returns : anumber
Arguments : void/ a number
object_idcodeprevnextTop
 Name      : object_id
Purpose : get/setter for object_id
Usage : my $id = $edge->object_id();
Returns : a string identifier
Arguments : void/ an identifier
nodescodeprevnextTop
 Name      : nodes
Purpose : get/setter for nodes
Usage : my @nodes = $edge->nodes();
Returns : a 2 element list of nodes /void
Arguments : void/ a 2 element list of nodes.
Methods code
newdescriptionprevnextTop
sub new {
      ##array based, not hash based ##..., therefore does not use 
#Bio::Root::Root->new().
my ($caller, @args) = @_; my $class = ref ($caller) || $caller; my $self = []; bless ($self, $class); my ($weight, $id, $nodes) = $self->_rearrange([qw( WEIGHT ID NODES)], @args); $self->[0] = $nodes->[0]; $self->[1] = $nodes->[1]; $self->[2] = defined($weight)?$weight:undef; $self->[3] = defined($id)?$id:undef; return $self;
}
weightdescriptionprevnextTop
sub weight {
	my $self = shift;
	if (@_) {$self->[2] = shift;}
	return defined($self->[2])?$self->[2]:undef;
}
object_iddescriptionprevnextTop
sub object_id {
	my $self            = shift;
	if (@_) {
		my $v  = shift;
		if (ref ($v)) {
			$self->throw ("Edge ID must be a text value, not a [".
							ref($v). "].");
			} 
		$self->[3] = shift;
	}
	return defined($self->[3])?$self->[3]:undef;
}
nodesdescriptionprevnextTop
sub nodes {
	my ($self, @args) = @_;
	if (@args >= 2 ) {
		$self->[0] =  $args[0];
		$self->[1] =  $args[1];
		}
	return ($self->[0], $self->[1]);
}
General documentation
FEEDBACKTop
Mailing ListsTop
User feedback is an integral part of the evolution of this and other
Bioperl modules. Send your comments and suggestions preferably to one
of the Bioperl mailing lists. Your participation is much appreciated.
  bioperl-l@bioperl.org                  - General discussion
http://bioperl.org/wiki/Mailing_lists - About the mailing lists
Reporting BugsTop
Report bugs to the Bioperl bug tracking system to help us keep track
the bugs and their resolution. Bug reports can be submitted via the
web:
  http://bugzilla.open-bio.org/
AUTHOR - Richard AdamsTop
Email richard.adams@ed.ac.uk