]> git.donarmstrong.com Git - mothur.git/blob - libshuff.h
changing command name classify.shared to classifyrf.shared
[mothur.git] / libshuff.h
1 #ifndef LIBSHUFF
2 #define LIBSHUFF
3
4 /*
5  *  libshuff.h
6  *  Mothur
7  *
8  *  Created by Pat Schloss on 4/8/09.
9  *  Copyright 2009 Patrick D. Schloss. All rights reserved.
10  *
11  */
12
13 #include "fullmatrix.h"
14
15 class Libshuff {
16         
17 public:
18         Libshuff(FullMatrix*, int, float, float);
19     virtual ~Libshuff() {}
20         virtual vector<vector<double> > evaluateAll() = 0;
21         virtual float evaluatePair(int,int) = 0;
22         void randomizeGroups(int, int);
23         void resetGroup(int);
24         vector<vector<vector<double> > > getSavedMins();
25
26 protected:
27         void initializeGroups(FullMatrix*);
28         vector<double> getMinX(int);
29         vector<double> getMinXY(int, int);
30         
31         vector<vector<vector<double> > > savedMins;
32         
33         
34         FullMatrix* matrix;
35         vector<int> groupSizes;
36         vector<string> groupNames;
37         vector<vector<int> > groups;
38         vector<vector<int> > savedGroups;
39         vector<double> minX;
40         vector<double> minXY;
41         float cutOff;
42         int iters;
43         float stepSize;
44         
45         int numGroups;
46         MothurOut* m;
47 };
48
49 #endif