1 #ifndef CHIMERACCODECOMMAND_H
2 #define CHIMERACCODECOMMAND_H
5 * chimeraccodecommand.h
8 * Created by westcott on 3/30/10.
9 * Copyright 2010 Schloss Lab. All rights reserved.
14 #include "command.hpp"
18 /***********************************************************/
20 class ChimeraCcodeCommand : public Command {
22 ChimeraCcodeCommand(string);
23 ChimeraCcodeCommand();
24 ~ChimeraCcodeCommand(){}
26 vector<string> setParameters();
27 string getCommandName() { return "chimera.ccode"; }
28 string getCommandCategory() { return "Sequence Processing"; }
30 string getHelpString();
31 string getOutputPattern(string);
32 string getCitation() { return "Gonzalez JM, Zimmermann J, Saiz-Jimenez C (2005). Evaluating putative chimeric sequences from PCR-amplified products. Bioinformatics 21: 333-7. \nhttp://www.mothur.org/wiki/Chimera.ccode"; }
33 string getDescription() { return "detect chimeric sequences"; }
36 void help() { m->mothurOut(getHelpString()); }
41 unsigned long long start;
42 unsigned long long end;
43 linePair(unsigned long long i, unsigned long long j) : start(i), end(j) {}
45 vector<int> processIDS; //processid
46 vector<linePair*> lines;
48 int driver(linePair*, string, string, string);
49 int createProcesses(string, string, string);
52 int driverMPI(int, int, MPI_File&, MPI_File&, MPI_File&, vector<unsigned long long>&);
55 bool abort, filter, save;
56 string fastafile, templatefile, outputDir, maskfile;
57 int processors, window, numwanted, numSeqs, templateSeqsLength;
59 vector<string> fastaFileNames;
60 vector<string> outputNames;
63 /***********************************************************/