#include "command.hpp"
#include "sequence.hpp"
#include "qualityscores.h"
+#include "groupmap.h"
class TrimSeqsCommand : public Command {
public:
TrimSeqsCommand(string);
+ TrimSeqsCommand();
~TrimSeqsCommand();
+ vector<string> getRequiredParameters();
+ vector<string> getValidParameters();
+ vector<string> getRequiredFiles();
+ map<string, vector<string> > getOutputFiles() { return outputTypes; }
int execute();
void help();
private:
-
+
+ GroupMap* groupMap;
+
struct linePair {
unsigned long int start;
- int num;
- linePair(unsigned long int i, int j) : start(i), num(j) {}
+ unsigned long int end;
+ linePair(unsigned long int i, unsigned long int j) : start(i), end(j) {}
};
void getOligos(vector<string>&, vector<string>&);
bool cullAmbigs(Sequence&);
bool compareDNASeq(string, string);
int countDiffs(string, string);
+ map<string, vector<string> > outputTypes;
bool abort;
- string fastaFile, oligoFile, qFileName, outputDir;
+ string fastaFile, oligoFile, qFileName, groupfile, outputDir;
bool flip, allFiles, qtrim;
int numFPrimers, numRPrimers, maxAmbig, maxHomoP, minLength, maxLength, processors, tdiffs, bdiffs, pdiffs, comboStarts;
vector<string> groupVector;
map<string, int> primers;
map<string, int> combos;
+ map<string, int> groupToIndex;
vector<int> processIDS; //processid
vector<linePair*> lines;
int driverCreateTrim(string, string, string, string, string, string, string, vector<string>, vector<string>, linePair*, linePair*);
int createProcessesCreateTrim(string, string, string, string, string, string, string, vector<string>, vector<string>);
- int setLines(string, vector<linePair*>&);
+ int setLines(string, string, vector<unsigned long int>&, vector<unsigned long int>&);
};