]> git.donarmstrong.com Git - mothur.git/blobdiff - distancecommand.h
fixed cluster.split bug
[mothur.git] / distancecommand.h
index 7521ac70bdf6cf323b6442577ec7b1e609d6ccd8..3e3dc7098a768461c67dc1d45751e50891ccc9c2 100644 (file)
 class DistanceCommand : public Command {
 
 public:
-       DistanceCommand(string);        
+       DistanceCommand(string);
+       DistanceCommand();
        ~DistanceCommand();
+       vector<string> getRequiredParameters();
+       vector<string> getValidParameters();
+       vector<string> getRequiredFiles();
+       map<string, vector<string> > getOutputFiles() { return outputTypes; }
        int execute();  
        void help();
        
@@ -34,19 +39,31 @@ private:
        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<int> processIDS;   //end line, processid
        vector<linePair*> 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);
-       void 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);
 
 };