8 #include "rabundvector.hpp"
9 #include "sabundvector.hpp"
10 #include "listvector.hpp"
16 class SharedListVector;
29 static GlobalData* getInstance();
30 ListVector* gListVector;
31 SparseMatrix* gSparseMatrix;
36 SharedListVector* gSharedList;
42 string inputFileName, helpRequest, commandName, vertical;
44 vector<string> Estimators, Groups; //holds estimators to be used
45 set<int> lines; //hold lines to be used
46 set<string> labels; //holds labels to be used
47 vector<string> Treenames;
49 string getPhylipFile();
50 string getColumnFile();
52 string getRabundFile();
53 string getSabundFile();
55 string getGroupFile();
56 string getOrderFile();
57 string getFastaFile();
58 string getNexusFile();
59 string getClustalFile();
61 string getSharedFile();
64 string getPrecision();
71 string getRandomTree();
85 void setListFile(string);
86 void setPhylipFile(string);
87 void setColumnFile(string);
88 void setNameFile(string);
89 void setRabundFile(string);
90 void setSabundFile(string);
91 void setFormat(string);
92 void setRandomTree(string);
93 void setGroups(string);
100 void parseGlobalData(string, string);
102 void parseTreeFile(); //parses through tree file to find names of nodes and number of them
103 //this is required in case user has sequences in the names file that are
104 //not included in the tree.
105 //only takes names from the first tree in the tree file and assumes that all trees use the same names.
110 string phylipfile, columnfile, listfile, rabundfile, sabundfile, namefile, groupfile, orderfile, fastafile, nexusfile, clustalfile, treefile, sharedfile, line, label, randomtree, groups;
111 string cutoff, format, precision, method, fileroot, iters, jumble, freq, calc, abund, step, form, sorted, trump, soft, filter, scale;
114 static GlobalData* _uniqueInstance;
115 GlobalData( const GlobalData& ); // Disable copy constructor
116 void operator=( const GlobalData& ); // Disable assignment operator
119 void reset(); //clears all non filename parameters
120 void readTreeString(ifstream&);