public:
DistanceCommand(string);
+ DistanceCommand();
~DistanceCommand();
+ vector<string> getRequiredParameters();
+ vector<string> getValidParameters();
+ vector<string> getRequiredFiles();
+ map<string, vector<string> > getOutputFiles() { return outputTypes; }
int execute();
void help();
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
+ map<string, vector<string> > outputTypes;
- //void appendFiles(string, string);
+ //void m->appendFiles(string, string);
void createProcesses(string);
int driver(/*Dist*, SequenceDB, */int, int, string, float);
- int convertMatrix(string);
+ int driver(int, int, string, string);
+
+ #ifdef USE_MPI
+ int driverMPI(int, int, MPI_File&, float);
+ int driverMPI(int, int, string, unsigned long int&);
+ int driverMPI(int, int, string, unsigned long int&, string);
+ #endif
+
+ //int convertMatrix(string);
+ bool sanityCheck();
+ //int convertToLowerTriangle(string);
};