X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=chimeracheckcommand.h;fp=chimeracheckcommand.h;h=918b4e5e9bf8aa4a16a1e0ba0716e09753a29cea;hb=0caf3fbabaa3ece404f8ce77f4c883dc5b1bf1dc;hp=0000000000000000000000000000000000000000;hpb=1b73ff67c83892a025e597dabd9df6fe7b58206a;p=mothur.git diff --git a/chimeracheckcommand.h b/chimeracheckcommand.h new file mode 100644 index 0000000..918b4e5 --- /dev/null +++ b/chimeracheckcommand.h @@ -0,0 +1,69 @@ +#ifndef CHIMERACHECKCOMMAND_H +#define CHIMERACHECKCOMMAND_H + +/* + * chimeracheckcommand.h + * Mothur + * + * Created by westcott on 3/31/10. + * Copyright 2010 Schloss Lab. All rights reserved. + * + */ + +#include "mothur.h" +#include "command.hpp" +#include "chimera.h" +#include "chimeracheckrdp.h" + + +/***********************************************************/ + +class ChimeraCheckCommand : public Command { +public: + ChimeraCheckCommand(string); + ChimeraCheckCommand(); + ~ChimeraCheckCommand(){} + + vector setParameters(); + string getCommandName() { return "chimera.check"; } + string getCommandCategory() { return "Sequence Processing"; } + string getHelpString(); + string getCitation() { return "CHIMERA_CHECK version 2.7 written by Niels Larsen (http://wdcm.nig.ac.jp/RDP/docs/chimera_doc.html) \nhttp://www.mothur.org/wiki/Chimera.check"; } + string getDescription() { return "detect chimeric sequences"; } + + int execute(); + void help() { m->mothurOut(getHelpString()); } + + +private: + + struct linePair { + unsigned long long start; + unsigned long long end; + linePair(unsigned long long i, unsigned long long j) : start(i), end(j) {} + }; + + vector processIDS; //processid + vector lines; + + int driver(linePair*, string, string); + int createProcesses(string, string); + + #ifdef USE_MPI + int driverMPI(int, int, MPI_File&, MPI_File&, vector&); + #endif + + bool abort, svg, save; + string fastafile, templatefile, namefile, outputDir; + int processors, increment, ksize, numSeqs, templateSeqsLength; + Chimera* chimera; + vector fastaFileNames; + vector nameFileNames; + vector outputNames; +}; + +/***********************************************************/ + +#endif + +