]> git.donarmstrong.com Git - mothur.git/blobdiff - trimseqscommand.h
modified trim.seqs to account for primers of different lengths
[mothur.git] / trimseqscommand.h
index a93eba072eef5f9b6dd62b578331ee862272e76b..f9a251c9323a9388af285ce6933fd5b676fe3838 100644 (file)
@@ -22,7 +22,14 @@ public:
        void help();
        
 private:
-       void getOligos(vector<ofstream*>&);
+
+       struct linePair {
+               int start;
+               int num;
+               linePair(long int i, int j) : start(i), num(j) {}
+       };
+
+       void getOligos(vector<string>&);
        bool stripQualThreshold(Sequence&, ifstream&);
        bool cullQualAverage(Sequence&, ifstream&);
        bool stripBarcode(Sequence&, int&);
@@ -32,15 +39,25 @@ private:
        bool cullHomoP(Sequence&);
        bool cullAmbigs(Sequence&);
        bool compareDNASeq(string, string);
+       bool compareDNASeq(string, string, int, int&, int);
 
        bool abort;
        string fastaFile, oligoFile, qFileName, outputDir;
        
        bool flip, allFiles, qtrim;
-       int numFPrimers, numRPrimers, maxAmbig, maxHomoP, minLength, maxLength, qThreshold, qAverage;
+       int numFPrimers, numRPrimers, maxAmbig, maxHomoP, minLength, maxLength, qThreshold, qAverage, processors, tdiffs, bdiffs, pdiffs, currentSeqsTdiffs;
        vector<string> forPrimer, revPrimer, outputNames;
        map<string, int> barcodes;
        vector<string> groupVector;
+       
+       vector<int> processIDS;   //processid
+       vector<linePair*> lines;
+       vector<linePair*> qLines;
+       
+       int driverCreateTrim(string, string, string, string, string, vector<string>, linePair*, linePair*);     
+       int createProcessesCreateTrim(string, string, string, string, string, vector<string>);
+       int setLines(string, vector<linePair*>&);
+       
 };
 
 #endif