Bio::Structure Chain
SummaryIncluded librariesPackage variablesSynopsisDescriptionGeneral documentationMethods
Toolbar
WebCvs
Summary
Bio::Structure::Chain - Bioperl structure Object, describes a chain
Package variables
No package variables defined.
Included modules
Bio::Structure::Entry
Bio::Structure::Model
Inherit
Bio::Root::Root
Synopsis
  #add synopsis here
Description
This object stores a Bio::Structure::Chain
Methods
newDescriptionCode
residueDescriptionCode
add_residueDescriptionCode
modelDescriptionCode
idDescriptionCode
DESTROY
No description
Code
_remove_residuesDescriptionCode
_remove_modelDescriptionCode
_grandparentDescriptionCode
Methods description
new()code    nextTop
 Title   : new()
Usage : $struc = Bio::Structure::Chain->new(
-id => 'human_id',
-accession_number => 'AL000012',
);
Function: Returns a new Bio::Structure::Chain object from basic constructors. Usually called from Bio::Structure::IO. Returns : a new Bio::Structure::Chain object
residue()codeprevnextTop
 Title   : residue 
Usage :
Function: nothing useful until I get symbolic references to do what I want
Returns :
Args :
add_residue()codeprevnextTop
 Title   : add_residue
Usage :
Function: nothing useful until I get symbolic references to do what I want
Returns :
Args :
model()codeprevnextTop
 Title   : model
Usage :
Function: nothing useful until I get symbolic references to do what I want
Returns :
Args :
id()codeprevnextTop
 Title   : id
Usage : $chain->id("chain B")
Function: Gets/sets the ID for this chain
Returns : the ID
Args : the ID
_remove_residues()codeprevnextTop
 Title   : _remove_residues
Usage :
Function:
Returns :
Args :
_remove_model()codeprevnextTop
 Title   : _remove_model
Usage :
Function: Removes the Model this Chain is atttached to.
Returns :
Args :
_grandparent()codeprevnextTop
 Title   : _grandparent
Usage :
Function: get/set a symbolic reference to our grandparent
Returns :
Args :
Methods code
newdescriptionprevnextTop
sub new {
    my ($class, @args) = @_;
    my $self = $class->SUPER::new(@args);

    my($id, $residue ) =
        $self->_rearrange([qw(
			      ID
			      RESIDUE
                              )],
                          @args);

    $id      && $self->id($id);
    $self->{'residue'} = [];
    # the 'smallest' item that can be added to a chain is a residue. 
$residue && $self->throw("use a method based on an Entry object for now"); return $self;
}
residuedescriptionprevnextTop
sub residue {
	my ($self,$value) = @_;

	$self->throw("use a method on an Entry object to do what you want");
}
add_residuedescriptionprevnextTop
sub add_residue {
	my($self,$value) = @_;

	$self->throw("you want entry->add_residue(chain, residue)\n");
}
modeldescriptionprevnextTop
sub model {
	my($self, $value) = @_;

	$self->throw("go via a Entry object please\n");
}
iddescriptionprevnextTop
sub id {
        my ($self, $value) = @_;;
        if (defined $value) {
	        $self->{'id'} = $value;
        }
        return $self->{'id'};
}
DESTROYdescriptionprevnextTop
sub DESTROY {
	my $self = shift;
	
	# no specific destruction for now
} #
# from here on only private methods
#
}
_remove_residuesdescriptionprevnextTop
sub _remove_residues {
	my ($self) = shift;

	$self->throw("nothing usefull in here, go see Entry\n");
}
_remove_modeldescriptionprevnextTop
sub _remove_model {
	my ($self) = shift;

	$self->throw("go see an Entry object, nothing here\n");
}
_grandparentdescriptionprevnextTop
sub _grandparent {
	my($self,$symref) = @_;

	if (ref($symref)) {
		$self->throw("Thou shall only pass strings in here, no references $symref\n");
	}
	if (defined $symref) {
		$self->{'grandparent'} = $symref;
	}
	return $self->{'grandparent'};
}

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
Support Top
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 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:
  https://redmine.open-bio.org/projects/bioperl/
AUTHOR - Kris BoulezTop
Email kris.boulez@algonomics.com
APPENDIXTop
The rest of the documentation details each of the object methods.
Internal methods are usually preceded with a _