]> git.donarmstrong.com Git - mothur.git/blobdiff - parsefastaqcommand.h
added oligos class. added check orient parameter to trim.flows, sffinfo, fastq.info...
[mothur.git] / parsefastaqcommand.h
index b4d90e542a98f329dd166a93c54d57852e0f54dd..60c80f48f6f45015d5d493aa7b4e8c772ee920bd 100644 (file)
 
 
 #include "command.hpp"
+#include "trimoligos.h"
+#include "sequence.hpp"
+#include "groupmap.h"
+#include "oligos.h"
+
+struct fastqRead2 {
+    string quality;
+       Sequence seq;
+    string wholeRead;
+       
+       fastqRead2() {  };
+       fastqRead2(Sequence s, string q, string w) : seq(s), quality(q), wholeRead(w){};
+       ~fastqRead2() {};
+};
+
 
 class ParseFastaQCommand : public Command {
 
@@ -21,7 +36,7 @@ public:
        ~ParseFastaQCommand() {}
        
        vector<string> setParameters();
-       string getCommandName()                 { return "parse.fastq";         }
+       string getCommandName()                 { return "fastq.info";          }
        string getCommandCategory()             { return "Sequence Processing"; }
        
        string getHelpString(); 
@@ -35,11 +50,23 @@ public:
 private:
 
        vector<string> outputNames;     
-       string outputDir, fastaQFile, format;
-       bool abort, fasta, qual;
+       string outputDir, fastaQFile, format, oligosfile, groupfile;
+       bool abort, fasta, qual, pacbio, pairedOligos, reorient;
+    int pdiffs, bdiffs, ldiffs, sdiffs, tdiffs, split, numBarcodes, numPrimers, numLinkers, numSpacers, numRPrimers;
+    GroupMap* groupMap;
+    Oligos oligos;
+    
+    vector<vector<string> > fastqFileNames;
+    string noMatchFile;
        
        vector<int> convertQual(string);
     vector<char> convertTable;
+    bool readOligos(string oligosFile);
+    bool readGroup(string oligosFile);
+    fastqRead2 readFastq(ifstream&, bool&);
+    int findGroup(fastqRead2, int&, int&, TrimOligos*&, TrimOligos*&, int, int);
+    int findGroup(fastqRead2, int&, int&, string);
+    
 };
 
 #endif