SequenceReaderFastq Class Reference

#include <SequenceReaderFastq.h>

Inheritance diagram for SequenceReaderFastq:

Inheritance graph
[legend]
Collaboration diagram for SequenceReaderFastq:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 SequenceReaderFastq (const char *fileName, SequenceEncoder *pEncoder, ostream &monitoringStream=cerr)
 SequenceReaderFastq (const char *fileName, ostream &monitoringStream=cerr)
 SequenceReaderFastq (const SequenceReaderFastq &rhs)
 ~SequenceReaderFastq ()
virtual SequenceReaderclone (void)
virtual int getNextSequence (WordSequence &nextSeq, int wordLength)

Private Member Functions

SequenceReaderFastqoperator= (const SequenceReaderFastq &)

Detailed Description

Definition at line 50 of file SequenceReaderFastq.h.


Constructor & Destructor Documentation

SequenceReaderFastq::SequenceReaderFastq ( const char *  fileName,
SequenceEncoder pEncoder,
ostream &  monitoringStream = cerr 
)

Definition at line 47 of file SequenceReaderFastq.cpp.

Referenced by clone().

00049                                : 
00050 SequenceReaderFile
00051 ( fileName, '@', '+', pEncoder->clone(), monitoringStream )
00052 {
00053   monitoringStream_ << "constructing SequenceReaderFastq" << endl;
00054 } // ~constructor

Here is the caller graph for this function:

SequenceReaderFastq::SequenceReaderFastq ( const char *  fileName,
ostream &  monitoringStream = cerr 
)

Definition at line 57 of file SequenceReaderFastq.cpp.

00057                                                     : 
00058 SequenceReaderFile
00059 ( fileName, '@', '+', new SequenceEncoderDNA(12), monitoringStream )
00060 {
00061   monitoringStream_ << "constructing SequenceReaderFastq" << endl;
00062 } // ~constructor

SequenceReaderFastq::SequenceReaderFastq ( const SequenceReaderFastq rhs  ) 

Definition at line 64 of file SequenceReaderFastq.cpp.

References SequenceReader::monitoringStream_.

00064                                                                        :
00065 SequenceReaderFile((SequenceReaderFile)rhs)
00066 {
00067   monitoringStream_ << "copy constructing SequenceReaderFastq" << endl;
00068 }

SequenceReaderFastq::~SequenceReaderFastq (  ) 

Definition at line 73 of file SequenceReaderFastq.cpp.

References SequenceReader::monitoringStream_.

00074 {
00075   monitoringStream_ << "destructing SequenceReaderFastq" << endl;
00076 } // ~destructor


Member Function Documentation

virtual SequenceReader* SequenceReaderFastq::clone ( void   )  [inline, virtual]

Reimplemented from SequenceReaderFile.

Definition at line 85 of file SequenceReaderFastq.h.

References SequenceReaderFastq().

00086   { 
00087     return new SequenceReaderFastq( *this ); 
00088   }

Here is the call graph for this function:

int SequenceReaderFastq::getNextSequence ( WordSequence nextSeq,
int  wordLength 
) [virtual]

Reimplemented from SequenceReaderFile.

Definition at line 94 of file SequenceReaderFastq.cpp.

References DEBUG_L2, SequenceReaderFile::getNextSequence(), SequenceReaderFile::inputBuffer_, SequenceReaderFile::inputBufferSize_, SequenceReaderFile::pInputFileStream_, and SequenceReaderFile::seqStartChar_.

Referenced by main().

00095   {
00096     DEBUG_L2( "SequenceReaderFastq::getNextSequence" );
00097     if (SequenceReaderFile::getNextSequence( nextSeq, wordLength ) == -1 )
00098     {
00099       return -1;
00100     } // ~if
00101 
00102     // Now spool past the quality info 
00103     
00104     //    char firstOfLine;
00105     // `Interesting' standard library quirk: even though we are exclusively
00106     // reading chars firstOfLine must be an int (cos EOF is an int not a char)
00107     int firstOfLine;
00108     while (1==1)
00109     {
00110       firstOfLine = pInputFileStream_->peek();
00111       if (    ( firstOfLine == EOF ) 
00112            || ( (char)firstOfLine == seqStartChar_)) 
00113       {      
00114         return nextSeq.getNumBasesInLast();
00115       } // ~if 
00116       pInputFileStream_->getline( inputBuffer_, inputBufferSize_, '\n' );
00117 
00118     } // ~while
00119     return nextSeq.getNumBasesInLast(); 
00120 
00121   } // ~SequenceReaderFastq::getNextSequence

Here is the call graph for this function:

Here is the caller graph for this function:

SequenceReaderFastq& SequenceReaderFastq::operator= ( const SequenceReaderFastq  )  [private]


The documentation for this class was generated from the following files:
Generated on Fri Dec 21 13:20:41 2007 for ssaha by  doxygen 1.5.2