]> git.donarmstrong.com Git - mothur.git/blob - globaldata.hpp
6f66cbe8bbd09577ff0ce709e7fc882d79eb8874
[mothur.git] / globaldata.hpp
1 #ifndef GLOBALDATA_HPP
2 #define GLOBALDATA_HPP
3
4 #include "mothur.h"
5 #include "groupmap.h"
6 #include "treemap.h"
7 #include "rabundvector.hpp"
8 #include "sabundvector.hpp"
9 #include "listvector.hpp"
10 #include "tree.h"
11 #include "sparsematrix.hpp"
12 #include "sequencedb.h"
13
14
15 class ListVector;
16 class SharedListVector;
17 class SparseMatrix;
18 class FullMatrix;
19 class Tree;
20 class OrderVector;
21 class InputData;
22 class GroupMap;
23 class TreeMap;
24 class SAbundVector;
25 class RAbundVector;
26 class SequenceDB;
27
28 class GlobalData {
29 public:
30         static GlobalData* getInstance();
31         ListVector* gListVector;
32         SparseMatrix* gSparseMatrix;
33         InputData* ginput;
34         OrderVector* gorder;
35         ListVector* glist;
36         vector<Tree*> gTree;
37         SharedListVector* gSharedList;
38         SAbundVector* sabund;
39         RAbundVector* rabund;
40         GroupMap* gGroupmap;
41         FullMatrix* gMatrix;
42         TreeMap* gTreemap;
43         SequenceDB* gSequenceDB;
44         string inputFileName, argv;
45         bool allLines, runParse;
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;
50         
51         string getPhylipFile();
52         string getColumnFile();
53         string getListFile();
54         string getRabundFile();
55         string getSabundFile();
56         string getNameFile();   //do we need this?
57         string getGroupFile();  //do we need this?
58         string getOrderFile();
59 //      string getFastaFile();
60         string getTreeFile();
61         string getSharedFile();
62         string getFormat();     //do we need this?
63 //      string getCandidateFile();
64 //      string getTemplateFile();
65
66         void setListFile(string);
67 //      void setFastaFile(string);
68         void setTreeFile(string);
69 //      void setCandidateFile(string);
70 //      void setTemplateFile(string);
71         void setGroupFile(string);              //do we need this?
72         void setPhylipFile(string);
73         void setColumnFile(string);
74         void setNameFile(string);       //do we need this?
75         void setRabundFile(string);
76         void setSabundFile(string);
77         void setSharedFile(string);
78         void setOrderFile(string file);
79         void setFormat(string); //do we need this?
80         
81         void clear(); 
82         void clearLabels();
83         void clearAbund();
84         
85         void newRead();
86         
87 private:
88
89         string phylipfile, columnfile, listfile, rabundfile, sabundfile, namefile, groupfile, orderfile, treefile, sharedfile, format;
90
91         static GlobalData* _uniqueInstance;
92         GlobalData( const GlobalData& ); // Disable copy constructor
93         void operator=( const GlobalData& ); // Disable assignment operator
94         GlobalData();
95         ~GlobalData();
96         
97         
98 };
99
100 #endif