1 #ifndef RAREFACTSHAREDCOMMAND_H
2 #define RAREFACTSHAREDCOMMAND_H
4 * rarefactsharedcommand.h
7 * Created by Sarah Westcott on 1/6/09.
8 * Copyright 2009 Schloss Lab UMASS Amherst. All rights reserved.
12 #include "command.hpp"
13 #include "inputdata.h"
17 #include "validcalculator.h"
19 /* The rarefaction.shared() command:
20 The rarefaction command generates a rarefaction curve from a given file representing several groups.
21 The rarefaction.shared command can only be executed after a successful read.shared command. It outputs a file for each estimator you choose to use.
22 The rarefaction.shared command parameters are label, line, iters and sharedrarefaction.
23 No parameters are required, but you may not use both the line and label parameters at the same time.
24 The rarefaction command should be in the following format: rarefaction.shared(label=yourLabel, line=yourLines, iters=yourIters,
25 sharedrarefaction=yourEstimators). Example rarefaction.shared(label=unique-.01-.03, line=0,5,10, iters=10000,
26 sharedrarefaction =sharedobserved). The default values for
27 iters is 1000 and sharedrarefaction is sharedobserved which calculates the shared rarefaction curve for the observed richness.
28 The valid sharedrarefaction estimator is sharedobserved. The label and line parameters are used to analyze specific lines in your input. */
33 class RareFactSharedCommand : public Command {
36 RareFactSharedCommand(string);
37 ~RareFactSharedCommand();
42 GlobalData* globaldata;
44 vector<SharedRAbundVector*> lookup;
46 ValidCalculators* validCalculator;
48 vector<Display*> rDisplays;
52 bool abort, allLines, jumble;
53 set<int> lines; //hold lines to be used
54 set<string> labels; //holds labels to be used
55 string line, label, calc, groups;
56 vector<string> Estimators, Groups;