]> git.donarmstrong.com Git - mothur.git/blobdiff - globaldata.hpp
fixed bug in read.tree updates help and validparameters strings, added ability for...
[mothur.git] / globaldata.hpp
index 309ab4a09c712132617c1fab8bd96e7849f4643b..0abdd28cd18bcfc617ab105069cf15db5ead241b 100644 (file)
@@ -10,6 +10,7 @@ using namespace std;
 class ListVector;
 class SharedListVector;
 class SparseMatrix;
+class FullMatrix;
 class Tree;
 class OrderVector;
 class InputData;
@@ -20,8 +21,8 @@ class SAbundVector;
 class GlobalData {
 public:
        static GlobalData* getInstance();
-       ListVector* getListVector();
-       SparseMatrix* getSparseMatrix();
+       ListVector* gListVector;
+       SparseMatrix* gSparseMatrix;
        InputData* ginput;
        OrderVector* gorder;
        ListVector* glist;
@@ -29,12 +30,14 @@ public:
        SharedListVector* gSharedList;
        SAbundVector* sabund;
        GroupMap* gGroupmap;
+       FullMatrix* gMatrix;
        TreeMap* gTreemap;
        string inputFileName, helpRequest, commandName;
        bool allLines;
        vector<string>  Estimators, Groups; //holds estimators to be used
        set<int> lines; //hold lines to be used
        set<string> labels; //holds labels to be used
+       vector<string> Treenames;
        
        string getPhylipFile();
        string getColumnFile();
@@ -58,6 +61,9 @@ public:
        string getAbund();
        string getRandomTree();
        string getGroups();
+       string getStep();
+       string getForm();
+       string getSorted();
 
        void setListFile(string);
        void setPhylipFile(string);
@@ -70,27 +76,29 @@ public:
        void setGroups(string);
        void setCalc(string);
 
-       
-       void setListVector(ListVector*);
-       void setSparseMatrix(SparseMatrix*);
        void clear(); 
        void clearLabels();
        void clearAbund();
        
        void parseGlobalData(string, string);
+       
+       void parseTreeFile();           //parses through tree file to find names of nodes and number of them
+                                                       //this is required in case user has sequences in the names file that are
+                                                       //not included in the tree. 
+                                                       //only takes names from the first tree in the tree file and assumes that all trees use the same names.
+
                
 private:
        string phylipfile, columnfile, listfile, rabundfile, sabundfile, namefile, groupfile, orderfile, fastafile, treefile, sharedfile, line, label, randomtree, groups;
-       string cutoff, format, precision, method, fileroot, iters, jumble, freq, calc, abund;
+       string cutoff, format, precision, method, fileroot, iters, jumble, freq, calc, abund, step, form, sorted;
 
        static GlobalData* _uniqueInstance;
        GlobalData( const GlobalData& ); // Disable copy constructor
        void operator=( const GlobalData& ); // Disable assignment operator
        GlobalData();
        ~GlobalData();
-       ListVector* gListVector;
-       SparseMatrix* gSparseMatrix;
        void reset();   //clears all non filename parameters
+       void readTreeString(ifstream&);