]> git.donarmstrong.com Git - mothur.git/blob - mgclustercommand.h
fixed some bugs and added mgcluster command
[mothur.git] / mgclustercommand.h
1 #ifndef MGCLUSTERCOMMAND_H
2 #define MGCLUSTERCOMMAND_H
3
4 /*
5  *  mgclustercommand.h
6  *  Mothur
7  *
8  *  Created by westcott on 12/11/09.
9  *  Copyright 2009 Schloss Lab. All rights reserved.
10  *
11  */
12
13 #include "command.hpp"
14 #include "readblast.h"
15 #include "sparsematrix.hpp"
16 #include "nameassignment.hpp"
17 #include "globaldata.hpp"
18 #include "cluster.hpp"
19 #include "hcluster.h"
20
21 /**********************************************************************/
22
23 class MGClusterCommand : public Command {
24
25 public:
26         MGClusterCommand(string);
27         ~MGClusterCommand();
28         int execute();
29         void help();
30         
31 private:
32         GlobalData* globaldata;
33         ReadBlast* read;
34         NameAssignment* nameMap;
35         Cluster* cluster;
36         HCluster* hcluster;
37         ListVector* list;
38         ListVector oldList;
39         vector<DistNode> overlapMatrix;
40         DistNode next;
41
42         
43         string blastfile, method, namefile, overlapFile, distFile;
44         ofstream sabundFile, rabundFile, listFile;
45         float cutoff, penalty;
46         int precision, length, precisionLength;
47         bool abort, minWanted, hclusterWanted, exitedBreak, merge;
48         
49         void printData(ListVector*);
50         ListVector* mergeOPFs(map<string, int>, float);
51         void sortHclusterFiles(string, string);
52         vector<DistNode> getSeqs(ifstream&);
53
54 };
55
56 /**********************************************************************/
57
58 #endif
59
60
61