NAME

Bio::SeqReader::Fastq - Class providing a reader for files in FASTQ format.

SYNOPSIS

use Bio::SeqReader::Fastq;
my $in1 = new Bio::SeqReader::Fastq();          # from stdin
my $fh = ...
my $in2 = new Bio::SeqReader::Fastq( $fh );     # from $fh

EXAMPLES

DESCRIPTION

Bio::SeqReader::Fastq provides a method for reading a file or stream in FASTQ format.

This format [as described in Cock PJA, Fields CJ, Goto N, Heuer ML, Rice PM. (2010) "The Sanger FASTQ file format for sequences with quality scores, and the Solexa/Illumna FASTQ variants," Nucleic Acids Research 38] allows for multiline sequence and quality score information, and is handled correctly by this class.

CLASS METHODS

Bio::SeqReader::Fastq provides no class methods.

INSTANCE METHODS

Bio::SeqReader::Fastq provides the following instance methods.

new

Returns a new Bio::SeqReader::Fastq object.

# From an IO::File filehandle
my $fh1 = new IO::File( 'in.fq' );
my $in1 = new Bio::SeqReader::Fastq( fh => $fh1);

# From an IO::Uncompress::AnyUncompress filehandle
my $fh2 = new IO::File( 'in.fq.gz' );
my $in2 = new Bio::SeqReader::Fastq( fh => $fh2);

# From stdin
my $in3 = new Bio::SeqReader::Fastq();

A filehandle must be compatible with those produced by IO::File filehandle; for example,

$fh1 = new IO::File( 'in.fastq' )
$fh2 = new IO::Uncompress::AnyUncompress( 'in.fastq.gz' )
$fh3 = new IO::Uncompress::AnyUncompress( 'in.fastq' ).
next

Returns the next sequence as a Bio::SeqReader::FastqRecord object.

while ( my $so = $in->next() ) {
    # work with $so here
}

EXTERNAL DEPENDENCIES

Perl core.

EXAMPLES

BUGS

None reported yet, but let me know.

SEE ALSO

Bio::SeqReader::FastqRecord.

AUTHOR

John A. Crow <jac@ncgr.org>

COPYRIGHT AND LICENSE

Copyright (C) 2012 by John A. Crow
Copyright (C) 2012 by National Center for Genome Resources

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.0 or, at your option, any later version of Perl 5 you may have available.