]> git.donarmstrong.com Git - mothur.git/blobdiff - rarefactcommand.h
fixes while testing 1.33.0
[mothur.git] / rarefactcommand.h
index b1b706c99c80adf203059e781d8a4d89866f2dfb..02fe6e3aa4355a107e76f06d8f8f9a7f0df19118 100644 (file)
@@ -9,49 +9,51 @@
  *
  */
 
-#include <Carbon/Carbon.h>
-#include <iostream>
-#include <fstream>
-#include <vector>
 #include "command.hpp"
 #include "ordervector.hpp"
 #include "inputdata.h"
 #include "rarefact.h"
 #include "display.h"
-#include "readmatrix.hpp"
-
-
-/*The rarefaction() command:
-       The rarefaction command generates a rarefaction curve from a given file.  
-       The rarefaction command can only be executed after a successful read.list, read.sabund or read.rabund command, with one exception. 
-       The rarefaction command can be executed after a successful cluster command.  It will use the .list file from the output of the cluster. 
-       The rarefaction command outputs a file for each estimator you choose to use.  It is recommended to only use rarefaction estimator.  
-       The rarefaction command parameters are label, line, iters, freq, rarefaction.  No parameters are required, 
-       but you may not use both the line and label  parameters at the same time. The rarefaction command should be in the following format: 
-       rarefaction(label=yourLabel, line=yourLines, iters=yourIters, freq=yourFreq, rarefaction=yourEstimators). 
-       Example rarefaction(label=unique-.01-.03, line=0,5,10, iters=10000, freq=10, rarefaction=rarefaction-rchao-race-rjack-rbootstrap-rshannon-rnpshannon-rsimpson). 
-       The default values for iters is 1000, freq is 100, and rarefaction is rarefaction which calculates the rarefaction curve for the observed richness. 
-       The valid rarefaction estimators are: rarefaction-rchao-race-rjack-rbootstrap-rshannon-rnpshannon-rsimpson.  
-       Rarefaction is the only recommended estimator.  The label and line parameters are used to analyze specific lines in your input. */
-       
-
-class GlobalData;
+#include "validcalculator.h"
 
 class RareFactCommand : public Command {
        
 public:
+       RareFactCommand(string);
        RareFactCommand();      
-       ~RareFactCommand();
-       int execute();  
+       ~RareFactCommand(){}
+       
+       vector<string> setParameters();
+       string getCommandName()                 { return "rarefaction.single";          }
+       string getCommandCategory()             { return "OTU-Based Approaches";        }
+       
+       string getHelpString(); 
+    string getOutputPattern(string);   
+       string getCitation() { return "Magurran AE (2004). Measuring biological diversity. Blackwell Pub.: Malden, Ma. \nhttp://www.mothur.org/wiki/Rarefaction.single"; }
+       string getDescription()         { return "generate intra-sample rarefaction curves using a re-sampling without replacement approach"; }
+
+       int execute(); 
+       void help() { m->mothurOut(getHelpString()); }  
        
 private:
-       GlobalData* globaldata;
+       
        vector<Display*> rDisplays;
-       ReadMatrix* read;
        OrderVector* order;
        InputData* input;
        Rarefact* rCurve;
-       int freq, nIters;
+       int nIters, abund, processors;
+       float freq;
+       
+       bool abort, allLines, groupMode;
+       set<string> labels; //holds labels to be used
+       string label, calc, sharedfile, listfile, rabundfile, sabundfile, format, inputfile;
+       vector<string>  Estimators;
+       vector<string> inputFileNames, outputNames;
+       vector<string> groups;
+       string outputDir;
+       
+       vector<string> parseSharedFile(string, map<string, set<int> >&);
+       vector<string> createGroupFile(vector<string>&, map<int, string>);
 };
 
-#endif
\ No newline at end of file
+#endif