]> git.donarmstrong.com Git - mothur.git/blobdiff - trimoligos.h
added dups parameter to chimera.uchime. working on make.contigs command.
[mothur.git] / trimoligos.h
index e3ea7d55537e323f3869a6157ff3aed4bbd99eea..fb8f74dcb4f309387ccf3caa923354a466c9fccb 100644 (file)
 #include "sequence.hpp"
 #include "qualityscores.h"
 
+struct oligosPair {
+       string forward;
+       string reverse;
+       
+       oligosPair() { forward = ""; reverse = "";  }
+       oligosPair(string f, string r) : forward(f), reverse(r) {}
+       ~oligosPair() {}
+};
 
 class TrimOligos {
        
        public:
         TrimOligos(int,int, map<string, int>, map<string, int>, vector<string>); //pdiffs, bdiffs, primers, barcodes, revPrimers
-               TrimOligos(int,int, int, int, map<string, int>, map<string, int>, vector<string>, vector<string>, vector<string>); //pdiffs, bdiffs, ldiffs, sdiffs, primers, barcodes, revPrimers, linker, spacer
+        TrimOligos(int,int, int, int, map<string, int>, map<string, int>, vector<string>, vector<string>, vector<string>); //pdiffs, bdiffs, ldiffs, sdiffs, primers, barcodes, revPrimers, linker, spacer
+        TrimOligos(int,int, int, int, map<int, oligosPair>, map<int, oligosPair>, vector<string>, vector<string>); //pdiffs, bdiffs, ldiffs, sdiffs, primers, barcodes, linker, spacer
                ~TrimOligos();
        
                int stripBarcode(Sequence&, int&);      
                int stripBarcode(Sequence&, QualityScores&, int&);
-       
+        int stripBarcode(Sequence&, Sequence&, QualityScores&, QualityScores&, int&);
+       
                int stripForward(Sequence&, int&);
                int stripForward(Sequence&, QualityScores&, int&, bool);
+        int stripForward(Sequence&, Sequence&, QualityScores&, QualityScores&, int&);
        
                bool stripReverse(Sequence&);
                bool stripReverse(Sequence&, QualityScores&);
@@ -47,6 +58,8 @@ class TrimOligos {
                vector<string> revPrimer;
         vector<string> linker;
         vector<string> spacer;
+        map<int, oligosPair> ibarcodes;
+        map<int, oligosPair> iprimers;
        
                MothurOut* m;