]> git.donarmstrong.com Git - mothur.git/blob - validcalculator.h
working on pam
[mothur.git] / validcalculator.h
1 #ifndef VALIDCALCULATOR_H
2 #define VALIDCALCULATOR_H
3
4 /*
5  *  validcalculator.h
6  *  Dotur
7  *
8  *  Created by Sarah Westcott on 1/5/09.
9  *  Copyright 2009 Schloss Lab UMASS Amherst. All rights reserved.
10  *
11  */
12
13 #include "mothur.h"
14 #include "mothurout.h"
15
16 //This class contains a list of all valid calculators in Mothur.  
17 //It has a function which will tell you if your calculator is valid for the given parameter.
18 //When adding a new calculator you must add it to the valid list.
19
20
21 class ValidCalculators {
22         public:
23                 ValidCalculators();
24                 ~ValidCalculators();
25                 bool isValidCalculator(string, string);
26                 void printCalc(string, ostream&);
27                 string printCalc(string);
28                 void printCitations(vector<string>);
29                 
30         private:
31                 map<string, string> single;
32                 map<string, string> shared;
33                 map<string, string> rarefaction;
34                 map<string, string> summary;
35                 map<string, string> sharedrarefaction;
36                 map<string, string> sharedsummary;
37                 map<string, string> vennsingle;
38                 map<string, string> vennshared;
39                 map<string, string> treegroup;
40                 map<string, string> matrix;
41                 map<string, string> heat;
42                 map<string, string> boot;
43                 map<string, string> distance;
44                 map<string, string>::iterator it;
45                 set<string> allCalcs;
46                 
47                 void initialSingle();
48                 void initialShared();
49                 void initialRarefaction();
50                 void initialSharedRarefact();
51                 void initialSummary();
52                 void initialSharedSummary();
53                 void initialVennSingle();
54                 void initialVennShared();
55                 void initialTreeGroups();
56                 void initialMatrix();
57                 void initialBoot();
58                 void initialDistance();
59                 void initialHeat();
60                 
61                 MothurOut* m;
62 };
63
64 #endif