#include "database.hpp"
#include "alignment.hpp"
#include "alignmentdb.h"
-#include "mothurfiles.h"
class AlignCommand : public Command {
AlignCommand(string);
AlignCommand();
~AlignCommand();
- vector<string> getRequiredParameters();
- vector<string> getValidParameters();
- vector<string> getRequiredFiles();
- map<string, vector<string> > getOutputFiles() { return outputTypes; }
+
+ vector<string> setParameters();
+ string getCommandName() { return "align.seqs"; }
+ string getCommandCategory() { return "Sequence Processing"; }
+ string getHelpString();
+ string getCitation() { return "DeSantis TZ, Jr., Hugenholtz P, Keller K, Brodie EL, Larsen N, Piceno YM, Phan R, Andersen GL (2006). NAST: a multiple sequence alignment server for comparative analysis of 16S rRNA genes. Nucleic Acids Res 34: W394-9.\nSchloss PD (2009). A high-throughput DNA sequence aligner for microbial ecology studies. PLoS ONE 4: e8230.\nSchloss PD (2010). The effects of alignment quality, distance calculation method, sequence filtering, and region on the analysis of 16S rRNA gene-based studies. PLoS Comput Biol 6: e1000844.\nhttp://www.mothur.org/wiki/Align.seqs http://www.mothur.org/wiki/Align.seqs"; }
+ string getDescription() { return "align sequences"; }
+
int execute();
- void help();
+ void help() { m->mothurOut(getHelpString()); }
private:
struct linePair {
vector<int> processIDS; //processid
vector<linePair*> lines;
bool MPIWroteAccnos;
- map<string, vector<string> > outputTypes;
AlignmentDB* templateDB;
Alignment* alignment;
vector<string> candidateFileNames;
vector<string> outputNames;
- bool abort, flip, calledHelp;
- CurrentFile* currentFiles;
+ bool abort, flip, calledHelp, save;
};