public:
DistanceCommand(string);
- ~DistanceCommand();
- int execute();
- void help();
+ DistanceCommand();
+ ~DistanceCommand() {}
+
+ vector<string> setParameters();
+ string getCommandName() { return "dist.seqs"; }
+ string getCommandCategory() { return "Sequence Processing"; }
+ string getHelpString();
+ string getCitation() { return "Schloss 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/Dist.seqs"; }
+
+ int execute();
+ void help() { m->mothurOut(getHelpString()); }
+
private:
- struct linePair {
+ struct distlinePair {
int start;
int end;
+
};
Dist* distCalculator;
SequenceDB alignDB;
- string countends, output, fastafile, calc, outputDir;
- int processors;
+ string countends, output, fastafile, calc, outputDir, oldfastafile, column, compress;
+
+ int processors, numNewFasta;
float cutoff;
- map<int, int> processIDS; //end line, processid
- vector<linePair*> lines;
+ vector<int> processIDS; //end line, processid
+ vector<distlinePair> lines;
bool abort;
- vector<string> Estimators; //holds estimators to be used
+ vector<string> Estimators, outputNames; //holds estimators to be used
- //void appendFiles(string, string);
+ //void m->appendFiles(string, string);
void createProcesses(string);
int driver(/*Dist*, SequenceDB, */int, int, string, float);
+ int driver(int, int, string, string);
#ifdef USE_MPI
int driverMPI(int, int, MPI_File&, float);
- int driverMPI(int, int, string, long&);
+ int driverMPI(int, int, string, unsigned long int&);
+ int driverMPI(int, int, string, unsigned long int&, string);
#endif
- int convertMatrix(string);
- int convertToLowerTriangle(string);
+ //int convertMatrix(string);
+ bool sanityCheck();
+ //int convertToLowerTriangle(string);
};