8 #include "rabundvector.hpp"
9 #include "sabundvector.hpp"
10 #include "listvector.hpp"
16 class SharedListVector;
30 static GlobalData* getInstance();
31 ListVector* gListVector;
32 SparseMatrix* gSparseMatrix;
37 SharedListVector* gSharedList;
43 SequenceDB* gSequenceDB;
44 string inputFileName, helpRequest, commandName, vertical, argv;
46 vector<string> Estimators, Groups; //holds estimators to be used
47 set<int> lines; //hold lines to be used
48 set<string> labels; //holds labels to be used
49 vector<string> Treenames;
51 string getPhylipFile();
52 string getColumnFile();
54 string getRabundFile();
55 string getSabundFile();
57 string getGroupFile();
58 string getOrderFile();
59 string getFastaFile();
60 string getNexusFile();
61 string getClustalFile();
63 string getSharedFile();
66 string getPrecision();
73 string getRandomTree();
78 string getCountEnds();
79 string getProcessors();
81 string getCandidateFile();
88 string getGapextend();
97 string getMaxHomoPolymer();
98 string getMinLength();
99 string getMaxLength();
101 void setListFile(string);
102 void setGroupFile(string file);
103 void setPhylipFile(string);
104 void setColumnFile(string);
105 void setNameFile(string);
106 void setRabundFile(string);
107 void setSabundFile(string);
108 void setSharedFile(string);
109 void setFormat(string);
110 void setRandomTree(string);
111 void setGroups(string);
112 void setCalc(string);
113 void setCountEnds(string);
114 void setProcessors(string);
120 void parseGlobalData(string, string);
122 void parseTreeFile(); //parses through tree file to find names of nodes and number of them
123 //this is required in case user has sequences in the names file that are
124 //not included in the tree.
125 //only takes names from the first tree in the tree file and assumes that all trees use the same names.
130 string phylipfile, columnfile, listfile, rabundfile, sabundfile, namefile, groupfile, orderfile, fastafile, nexusfile, clustalfile, treefile, sharedfile, line, label, randomtree, groups, cutoff, format, precision, method, fileroot, iters, jumble, freq, calc, abund, step, form, sorted, trump, soft, hard, scale, countends, processors, candidatefile, search, ksize, align, match, size, mismatch, gapopen, gapextend, minLength, maxLength, startPos, endPos, maxAmbig, maxHomoPolymer;
133 static GlobalData* _uniqueInstance;
134 GlobalData( const GlobalData& ); // Disable copy constructor
135 void operator=( const GlobalData& ); // Disable assignment operator
138 void reset(); //clears all non filename parameters
139 void readTreeString(ifstream&);