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

NAME

       Bio::SearchIO::infernal - SearchIO-based Infernal parser

SYNOPSIS

         my $parser = Bio::SearchIO->new(-format => 'infernal',
                                         -file => 'purine.inf');
         while( my $result = $parser->next_result ) {
               # general result info, such as model used, Infernal version
               while( my $hit = $result->next_hit ) {
                   while( my $hsp = $hit->next_hsp ) {
                       # ...
                   }
               }
         }

DESCRIPTION

       This is a SearchIO-based parser for Infernal output from the cmsearch program.  It
       currently parses cmsearch output for Infernal versions 0.7-1.1; older versions may work
       but will not be supported.

       The latest version of Infernal is 1.1. The output has changed substantially relative to
       version 1.0. Versions 1.x are stable releases (and output has stabilized) therefore it is
       highly recommended that users upgrade to using the latest Infernal release. Support for
       the older pre-v.1 developer releases will be dropped for future core 1.6 releases.

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 - Chris Fields

       Email cjfields-at-uiuc-dot-edu

CONTRIBUTORS

         Jeffrey Barrick, Michigan State University
         Paul Cantalupo, University of Pittsburgh

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::SearchIO::infernal->new();
        Function: Builds a new Bio::SearchIO::infernal object
        Returns : Bio::SearchIO::infernal
        Args    : -fh/-file      => cmsearch (infernal) filename
                  -format        => 'infernal'
                  -model         => query model (Rfam ID) (default undef)
                  -database      => database name (default undef)
                  -query_acc     => query accession, eg. Rfam accession RF####
                  -query_desc    => query description, eg. Rfam description
                  -hsp_minscore  => minimum HSP score cutoff
                  -convert_meta  => boolean, set to convert meta string to simple WUSS format
                  -symbols       => hash ref of structure symbols to use
                                    (default symbols in %STRUCTURE_SYMBOLS hash)

   next_result
        Title   : next_result
        Usage   : my $hit = $searchio->next_result;
        Function: Returns the next Result from a search
        Returns : Bio::Search::Result::ResultI object
        Args    : none

   start_element
        Title   : start_element
        Usage   : $eventgenerator->start_element
        Function: Handles a start element event
        Returns : none
        Args    : hashref with at least 2 keys 'Data' and 'Name'

   end_element
        Title   : start_element
        Usage   : $eventgenerator->end_element
        Function: Handles an end element event
        Returns : none
        Args    : hashref with at least 2 keys, 'Data' and 'Name'

   element
        Title   : element
        Usage   : $eventhandler->element({'Name' => $name, 'Data' => $str});
        Function: Convenience method that calls start_element, characters, end_element
        Returns : none
        Args    : Hash ref with the keys 'Name' and 'Data'

   element_hash
        Title   : element
        Usage   : $eventhandler->element_hash({'Hsp_hit-from' => $start,
                                               'Hsp_hit-to'   => $end,
                                               'Hsp_score'    => $lastscore});
        Function: Convenience method that takes multiple simple data elements and
                  maps to appropriate parameters
        Returns : none
        Args    : Hash ref with the mapped key (in %MAPPING) and value

   characters
        Title   : characters
        Usage   : $eventgenerator->characters($str)
        Function: Send a character events
        Returns : none
        Args    : string

   within_element
        Title   : within_element
        Usage   : if( $eventgenerator->within_element($element) ) {}
        Function: Test if we are within a particular element
                  This is different than 'in' because within can be tested
                  for a whole block.
        Returns : boolean
        Args    : string element name

   in_element
        Title   : in_element
        Usage   : if( $eventgenerator->in_element($element) ) {}
        Function: Test if we are in a particular element
                  This is different than 'within' because 'in' only
                  tests its immediate parent.
        Returns : boolean
        Args    : string element name

   start_document
        Title   : start_document
        Usage   : $eventgenerator->start_document
        Function: Handle a start document event
        Returns : none
        Args    : none

   end_document
        Title   : end_document
        Usage   : $eventgenerator->end_document
        Function: Handles an end document event
        Returns : Bio::Search::Result::ResultI object
        Args    : none

   result_count
        Title   : result_count
        Usage   : my $count = $searchio->result_count
        Function: Returns the number of results we have processed
        Returns : integer
        Args    : none

   model
        Title   : model
        Usage   : my $model = $parser->model();
        Function: Get/Set model; Infernal currently does not output
                  the model name (Rfam ID)
        Returns : String (name of model)
        Args    : [optional] String (name of model)

   database
        Title   : database
        Usage   : my $database = $parser->database();
        Function: Get/Set database; pre-v.1 versions of Infernal do not output
                  the database name
        Returns : String (database name)
        Args    : [optional] String (database name)

   algorithm
        Title   : algorithm
        Usage   : my $algorithm = $parser->algorithm();
        Function: Get/Set algorithm; pre-v.1 versions of Infernal do not output
                  the algorithm name
        Returns : String (algorithm name)
        Args    : [optional] String (algorithm name)

   query_accession
        Title   : query_accession
        Usage   : my $acc = $parser->query_accession();
        Function: Get/Set query (model) accession; pre-v1.1 Infernal does not output
                  the accession number (Rfam accession #)
        Returns : String (accession)
        Args    : [optional] String (accession)

   query_description
        Title   : query_description
        Usage   : my $acc = $parser->query_description();
        Function: Get/Set query (model) description; pre-v1.1 Infernal does not output
                  the Rfam description
        Returns : String (description)
        Args    : [optional] String (description)

   hsp_minscore
        Title   : hsp_minscore
        Usage   : my $cutoff = $parser->hsp_minscore();
        Function: Get/Set min bit score cutoff (for generating Hits/HSPs)
        Returns : score (number)
        Args    : [optional] score (number)

   convert_meta
        Title   : convert_meta
        Usage   : $parser->convert_meta(1);
        Function: Get/Set boolean flag for converting Infernal WUSS format
                  to a simple bracketed format (simple WUSS by default)
        Returns : boolean flag (TRUE or FALSE)
        Args    : [optional] boolean (eval's to TRUE or FALSE)

   version
        Title   : version
        Usage   : $parser->version();
        Function: Set the Infernal cmsearch version
        Returns : version
        Args    : [optional] version

   structure_symbols
        Title   : structure_symbols
        Usage   : my $hashref = $parser->structure_symbols();
        Function: Get/Set RNA structure symbols
        Returns : Hash ref of delimiters (5' stem, 3' stem, single-strand, etc)
                : default = < (5-prime)
                            > (3-prime)
                            : (single-strand)
                            ? (unknown)
                            . (gap)
        Args    : Hash ref of substitute delimiters, using above keys.

   simple_meta
        Title   : simple_meta
        Usage   : my $string = $parser->simple_meta($str);
        Function: converts more complex WUSS meta format into simple bracket format
                  using symbols defined in structure_symbols()
        Returns : converted string
        Args    : [required] string to convert
        Note    : This is a very simple conversion method to get simple bracketed
                  format from Infernal data.  If the convert_meta() flag is set,
                  this is the method used to convert the strings.