]> git.donarmstrong.com Git - mothur.git/blobdiff - distancecommand.h
captured stdout from system command, fixed bug in trim.seqs added error checks for...
[mothur.git] / distancecommand.h
index c1dac1443a4d2a213ab715d79908e6dd76027a62..81267d1604ca2ba2a4551b2520cc6eeee7182a0f 100644 (file)
@@ -21,38 +21,53 @@ class DistanceCommand : public Command {
 
 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, 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);
 
 };