]> git.donarmstrong.com Git - mothur.git/blobdiff - distancecommand.h
fixed cluster.split bug
[mothur.git] / distancecommand.h
index c99e5c2cf8b7a56c4cd9b74d7563619a80b8f421..3e3dc7098a768461c67dc1d45751e50891ccc9c2 100644 (file)
 
 #include "mothur.h"
 #include "command.hpp"
-#include "globaldata.hpp"
 #include "validcalculator.h"
 #include "dist.h"
 #include "sequencedb.h"
 
+
 class DistanceCommand : public Command {
 
 public:
-       DistanceCommand();      
-       ~DistanceCommand() {};
+       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:
-       GlobalData* globaldata;
-       ValidCalculators* validCalculator;
+       struct linePair {
+               int start;
+               int end;
+       };
+       
        Dist* distCalculator;
-       SequenceDB* seqDB;
-       ofstream out;
-       ifstream in;
-       string outputFileName;
-       string countends;
-       int processors;
+       SequenceDB alignDB;
+
+       string countends, output, fastafile, calc, outputDir, oldfastafile, column, compress;
+
+       int processors, numNewFasta;
        float cutoff;
+       vector<int> processIDS;   //end line, processid
+       vector<linePair*> lines;
+       
+       bool abort;
+       vector<string>  Estimators, outputNames; //holds estimators to be used
+       map<string, vector<string> > outputTypes;
+       
+       //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, unsigned long int&);
+       int driverMPI(int, int, string, unsigned long int&, string);
+       #endif
        
-       void appendFiles(string, string);
-       int driver(Dist*, SequenceDB*, int, int, string, float);
+       //int convertMatrix(string);
+       bool sanityCheck();
+       //int convertToLowerTriangle(string);
 
 };