]> git.donarmstrong.com Git - mothur.git/blob - globaldata.hpp
1d38d63afc4df198599b77cf725b734c531a33ac
[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
11 class ListVector;
12 class SharedListVector;
13 class SparseMatrix;
14 class FullMatrix;
15 class Tree;
16 class OrderVector;
17 class InputData;
18 class GroupMap;
19 class TreeMap;
20 class SAbundVector;
21 class RAbundVector;
22 class SequenceDB;
23
24 class GlobalData {
25 public:
26         static GlobalData* getInstance();
27         ListVector* gListVector;
28         SparseMatrix* gSparseMatrix;
29         InputData* ginput;
30         OrderVector* gorder;
31         ListVector* glist;
32         vector<Tree*> gTree;
33         SharedListVector* gSharedList;
34         SAbundVector* sabund;
35         RAbundVector* rabund;
36         GroupMap* gGroupmap;
37         FullMatrix* gMatrix;
38         TreeMap* gTreemap;
39         SequenceDB* gSequenceDB;
40         string inputFileName, argv;
41         bool allLines, runParse;
42         vector<string>  Estimators, Groups; //holds estimators to be used
43         set<int> lines; //hold lines to be used
44         set<string> labels; //holds labels to be used
45         vector<string> Treenames;
46         
47         string getPhylipFile();
48         string getColumnFile();
49         string getListFile();
50         string getRabundFile();
51         string getSabundFile();
52         string getNameFile();
53         string getGroupFile();
54         string getOrderFile();
55         string getFastaFile();
56         string getTreeFile();
57         string getSharedFile();
58         string getFormat();
59         string getCandidateFile();
60                 
61         void setListFile(string);
62         void setFastaFile(string);
63         void setTreeFile(string);
64         void setCandidateFile(string);
65         void setGroupFile(string);      
66         void setPhylipFile(string);
67         void setColumnFile(string);
68         void setNameFile(string);
69         void setRabundFile(string);
70         void setSabundFile(string);
71         void setSharedFile(string);
72         void setOrderFile(string file);
73         void setFormat(string);
74         
75         void clear(); 
76         void clearLabels();
77         void clearAbund();
78         
79         void newRead();
80         
81 private:
82
83         string phylipfile, columnfile, listfile, rabundfile, sabundfile, namefile, groupfile, orderfile, fastafile, treefile, sharedfile, format, candidatefile;
84
85         static GlobalData* _uniqueInstance;
86         GlobalData( const GlobalData& ); // Disable copy constructor
87         void operator=( const GlobalData& ); // Disable assignment operator
88         GlobalData();
89         ~GlobalData();
90         
91         
92 };
93
94 #endif