Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members

phdparser.cc

Go to the documentation of this file.
00001 #include "phdparser.h"
00002 #include <sstream>
00003 #include <fstream>
00004 #include <iostream>
00005 using namespace std;
00006 
00007 PhdParser::PhdParser(string infile) : filename(infile)
00008 {
00009   
00010 }
00011 
00012 TrapperVector<Q_UINT32> PhdParser::parse()
00013 {
00014   TrapperVector<Q_UINT32> phd;
00015   
00016   string line;
00017   
00018   ifstream inFile(filename.c_str());
00019   
00020   while ( getline(inFile, line) ) {
00021     if ( line == "BEGIN_DNA" ) break;
00022   }
00023   while ( getline(inFile, line) ) {
00024     if ( line == "END_DNA" ) break;
00025     
00026     istringstream is(line);
00027     char base;
00028     size_t qual;
00029     size_t index;
00030     if ( !(is>>base && is>>qual && is>>index) ) {
00031       cerr<<"PhdParser::parse(), input error"<<endl;
00032       cerr<<"Line is ill formated"<<endl;
00033       cerr<<line<<endl;
00034       return TrapperVector<Q_UINT32>();
00035     }
00036     phd.stlVector().push_back(index);
00037     
00038   }
00039   inFile.close();
00040   return phd;
00041 }

Generated on Fri Mar 17 17:44:24 2006 for trapper by  doxygen 1.4.4