Bio::SeqIO ztr
SummaryPackage variablesSynopsisDescriptionGeneral documentationMethods
Toolbar
WebCvsRaw content
Summary
Bio::SeqIO::ztr - ztr trace sequence input/output stream
Package variables
No package variables defined.
Included modules
Bio::Seq::SeqFactory
Bio::SeqIO
Synopsis
Do not use this module directly. Use it via the Bio::SeqIO class.
Description
This object can transform Bio::Seq objects to and from ztr trace
files.
Methods
BEGIN
No description
Code
_initialize
No description
Code
compressionDescriptionCode
next_seqDescriptionCode
write_seqDescriptionCode
Methods description
compressioncode    nextTop
 Title   : compression
Usage : $stream->compression(3);
Function: determines the level of ZTR compression
Returns : the current (or newly set) value.
Args : 1, 2 or 3 - any other (defined) value will cause the compression
to be reset to the default of 2.
next_seqcodeprevnextTop
 Title   : next_seq
Usage : $seq = $stream->next_seq()
Function: returns the next sequence in the stream
Returns : Bio::SeqWithQuality object
Args : NONE
write_seqcodeprevnextTop
 Title   : write_seq
Usage : $stream->write_seq(@seq)
Function: writes the $seq object into the stream
Returns : 1 for success and 0 for error
Args : Bio::Seq object
Methods code
BEGINdescriptionprevnextTop
sub BEGIN {
    eval { require Bio::SeqIO::staden::read; };
    if ($@) {
	$READ_AVAIL = 0;
    } else {
	push @ISA, "Bio::SeqIO::staden::read";
	$READ_AVAIL = 1;
    }
}
_initializedescriptionprevnextTop
sub _initialize {
  my($self,@args) = @_;
  $self->SUPER::_initialize(@args);  
  if( ! defined $self->sequence_factory ) {
      $self->sequence_factory(new Bio::Seq::SeqFactory(-verbose => $self->verbose(), -type => 'Bio::Seq::SeqWithQuality'));      
  }

  my ($compression) = $self->_rearrange([qw[COMPRESSION]], @args);
  $compression = 2 unless defined $compression;
  $self->compression($compression);

  unless ($READ_AVAIL) {
      Bio::Root::Root->throw( -class => 'Bio::Root::SystemException',
			      -text  => "Bio::SeqIO::staden::read is not available; make sure the bioperl-ext package has been installed successfully!"
			    );
  }
}
compressiondescriptionprevnextTop
sub compression {
    my ($self, $val) = @_;

    if (defined $val) {
	if ($val =~ m/^1|2|3$/o) {
$self->{_compression} = $val;
} else { $self->{_compression} = 2; } } return $self->{_compression}; } 1;
}
next_seqdescriptionprevnextTop
sub next_seq {
    my ($self) = @_;

    my ($seq, $id, $desc, $qual) = $self->read_trace($self->_fh, 'ztr');

    # create the seq object
$seq = $self->sequence_factory->create(-seq => $seq, -id => $id, -primary_id => $id, -desc => $desc, -alphabet => 'DNA', -qual => $qual ); return $seq;
}
write_seqdescriptionprevnextTop
sub write_seq {
    my ($self,@seq) = @_;

    my $fh = $self->_fh;
    foreach my $seq (@seq) {
	$self->write_trace($fh, $seq, 'ztr' . $self->compression);
    }

    $self->flush if $self->_flush_on_write && defined $self->_fh;
    return 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/MailList.shtml - 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 email or the web:
  bioperl-bugs@bio.perl.org
http://bugzilla.bioperl.org/
AUTHORS - Aaron MackeyTop
Email: amackey@virginia.edu
APPENDIXTop
The rest of the documentation details each of the object
methods. Internal methods are usually preceded with a _