]> git.donarmstrong.com Git - mothur.git/blobdiff - globaldata.hpp
This is mothur v 1.2.0 - the April ~24, 2009 release
[mothur.git] / globaldata.hpp
index 309ab4a09c712132617c1fab8bd96e7849f4643b..cc13bae137577dc28e554c39d9088725114740f3 100644 (file)
@@ -5,36 +5,46 @@
 #include "groupmap.h"
 #include "treemap.h"
 
+#include "rabundvector.hpp"
+#include "sabundvector.hpp"
+#include "listvector.hpp"
+
+
 using namespace std;
 
 class ListVector;
 class SharedListVector;
 class SparseMatrix;
+class FullMatrix;
 class Tree;
 class OrderVector;
 class InputData;
 class GroupMap;
 class TreeMap;
 class SAbundVector;
+class RAbundVector;
 
 class GlobalData {
 public:
        static GlobalData* getInstance();
-       ListVector* getListVector();
-       SparseMatrix* getSparseMatrix();
+       ListVector* gListVector;
+       SparseMatrix* gSparseMatrix;
        InputData* ginput;
        OrderVector* gorder;
        ListVector* glist;
        vector<Tree*> gTree;
        SharedListVector* gSharedList;
        SAbundVector* sabund;
+       RAbundVector* rabund;
        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 +68,10 @@ public:
        string getAbund();
        string getRandomTree();
        string getGroups();
+       string getStep();
+       string getForm();
+       string getSorted();
+       string getScale();
 
        void setListFile(string);
        void setPhylipFile(string);
@@ -70,27 +84,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, scale;
 
        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&);