X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=aligncommand.h;h=50e9bffb3ba26790d4b0531605d34cf99f173dbe;hb=30b3ffcd1cfd08e7144ae721bb53e27eb3f7a5d1;hp=cf30a6b456dfcf803b137a2500a10dd36f7a5f25;hpb=526a868606faa50caf86e7399f7554c0335b39e5;p=mothur.git diff --git a/aligncommand.h b/aligncommand.h index cf30a6b..50e9bff 100644 --- a/aligncommand.h +++ b/aligncommand.h @@ -10,26 +10,41 @@ * */ +#include "mothur.h" #include "command.hpp" -#include "globaldata.hpp" +#include "database.hpp" +#include "alignment.hpp" class AlignCommand : public Command { - public: - AlignCommand(); - ~AlignCommand(); - int execute(); +public: + AlignCommand(string); + ~AlignCommand(); + int execute(); + void help(); - private: - GlobalData* globaldata; - string candidateFileName, templateFileName, distanceFileName; - int kmerSize; - float match, misMatch, gapOpen, gapExtend; - ofstream out; - ifstream in; - +private: + struct linePair { + int start; + int numSeqs; + linePair(int i, int j) : start(i), numSeqs(j) {} + }; + vector processIDS; //processid + vector lines; + + Database* templateDB; + Alignment* alignment; + + int driver(linePair*, string, string); + void createProcesses(string, string); + void appendAlignFiles(string, string); + void appendReportFiles(string, string); + + string candidateFileName, templateFileName, distanceFileName, search, align; + float match, misMatch, gapOpen, gapExtend; + int processors, kmerSize; + + bool abort; }; - - -#endif \ No newline at end of file +#endif