X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=filterseqscommand.h;h=5eb49d3802177bf998e8fe9d0ba1dd80c2828709;hb=30c1fd8c45b6f0d66c17f2714dbb58b8ddccdce2;hp=af4c03a950a0f42ad4fd9d7453ad698423381bd0;hpb=5b7ac70116137b52dd7884b76c5bca660a5fea38;p=mothur.git diff --git a/filterseqscommand.h b/filterseqscommand.h index af4c03a..5eb49d3 100644 --- a/filterseqscommand.h +++ b/filterseqscommand.h @@ -11,37 +11,44 @@ */ #include "command.hpp" -#include "mothur.h" -#include "globaldata.hpp" -#include "readfasta.h" -#include "readnexus.h" -#include "readclustal.h" -#include "readseqsphylip.h" - -using namespace std; +#include "filters.h" +#include "mpi.h" +class Sequence; class FilterSeqsCommand : public Command { public: - FilterSeqsCommand(); + FilterSeqsCommand(string); ~FilterSeqsCommand() {}; int execute(); + void help(); private: - void doTrump(); - void doSoft(); - void doHard(); - void doVertical(); - - int alignmentLength; + struct linePair { + int start; + int numSeqs; + linePair(long int i, int j) : start(i), numSeqs(j) {} + }; + vector lines; + + + string vertical, filter, fasta, hard, outputDir, filterFileName; + vector fastafileNames; + int alignmentLength, processors; + vector bufferSizes; + + char trump; + bool abort; + float soft; int numSeqs; - GlobalData* globaldata; - ReadSeqs* readSeqs; - SequenceDB* db; + string createFilter(); + int createProcessesCreateFilter(Filters&, string); + int driverCreateFilter(Filters&, string, linePair*); + int MPICreateFilter(Filters&, vector&); + int setLines(string); + int parseBuffer(string, vector&); - string filter; - }; #endif