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

NAME

       Bio::Coordinate::Pair - Continuous match between two coordinate sets

SYNOPSIS

         use Bio::Location::Simple;
         use Bio::Coordinate::Pair;

         my $match1 = Bio::Location::Simple->new
             (-seq_id => 'propeptide', -start => 21, -end => 40, -strand=>1 );
         my $match2 = Bio::Location::Simple->new
             (-seq_id => 'peptide', -start => 1, -end => 20, -strand=>1 );
         my $pair = Bio::Coordinate::Pair->new(-in => $match1,
                                               -out => $match2
                                               );
         # location to match
         $pos = Bio::Location::Simple->new
             (-start => 25, -end => 25, -strand=> -1 );

         # results are in a Bio::Coordinate::Result
         # they can be Matches and Gaps; are  Bio::LocationIs
         $res = $pair->map($pos);
         $res->isa('Bio::Coordinate::Result');
         $res->each_match == 1;
         $res->each_gap == 0;
         $res->each_Location == 1;
         $res->match->start == 5;
         $res->match->end == 5;
         $res->match->strand == -1;
         $res->match->seq_id eq 'peptide';

DESCRIPTION

       This class represents a one continuous match between two coordinate systems represented by
       Bio::Location::Simple objects. The relationship is directed and reversible. It implements
       methods to ensure internal consistency, and map continuous and split locations from one
       coordinate system to another.

       The map() method returns Bio::Coordinate::Results with Bio::Coordinate::Result::Gaps. The
       calling code have to deal (process or ignore) them.

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 lists  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 the bugs and their
       resolution.  Bug reports can be submitted via the web:

         https://redmine.open-bio.org/projects/bioperl/

AUTHOR - Heikki Lehvaslaiho

       Email:  heikki-at-bioperl-dot-org

APPENDIX

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

   in
        Title   : in
        Usage   : $obj->in('peptide');
        Function: Set and read the input coordinate system.
        Example :
        Returns : value of input system
        Args    : new value (optional), Bio::LocationI

   out
        Title   : out
        Usage   : $obj->out('peptide');
        Function: Set and read the output coordinate system.
        Example :
        Returns : value of output system
        Args    : new value (optional), Bio::LocationI

   swap
        Title   : swap
        Usage   : $obj->swap;
        Function: Swap the direction of mapping; input <-> output
        Example :
        Returns : 1
        Args    :

   strand
        Title   : strand
        Usage   : $obj->strand;
        Function: Get strand value for the pair
        Example :
        Returns : ( 1 | 0 | -1 )
        Args    :

   test
        Title   : test
        Usage   : $obj->test;
        Function: test that both components are of the same length
        Example :
        Returns : ( 1 | undef )
        Args    :

   map
        Title   : map
        Usage   : $newpos = $obj->map($pos);
        Function: Map the location from the input coordinate system
                  to a new value in the output coordinate system.
        Example :
        Returns : new Bio::LocationI in the output coordinate system or undef
        Args    : Bio::LocationI object

   _map
        Title   : _map
        Usage   : $newpos = $obj->_map($simpleloc);
        Function: Internal method that does the actual mapping. Called
                  multiple times by map() if the location to be mapped is a
                  split location
        Example :
        Returns : new location in the output coordinate system or undef
        Args    : Bio::Location::Simple