]> git.donarmstrong.com Git - mothur.git/blob - slayer.h
started adding chimeraslayer method and fixed minor bug in treegroupscommand deconstr...
[mothur.git] / slayer.h
1 #ifndef SLAYER_H
2 #define SLAYER_H
3 /*
4  *  slayer.h
5  *  Mothur
6  *
7  *  Created by westcott on 9/25/09.
8  *  Copyright 2009 Schloss Lab. All rights reserved.
9  *
10  */
11
12  
13 #include "sequence.hpp"
14
15 /***********************************************************************/
16 //This class was modeled after the chimeraSlayer written by the Broad Institute
17 /***********************************************************************/
18 struct data_struct { //not right needs work...
19         int regionStart;
20         int regionEnd;
21         string parent;
22         float queryToParent;
23         float queryToParentLocal;
24         float divR;
25 };
26 /***********************************************************************/
27
28
29 class Slayer {
30
31         public:
32                 
33                 Slayer(int, int, int, float);
34                 ~Slayer() {};
35                 
36                 void getResults(Sequence*, vector<Sequence*>);
37                 //float getPercentID() {        return percentIdenticalQueryChimera;    }
38                 //vector<results> getOutput()  {        return outputResults;                   }
39                 
40                                 
41         private:
42                 
43                 int windowSize, windowStep, parentFragmentThreshold;
44                 float divRThreshold; 
45                 
46                 void verticalFilter(vector<Sequence*>);
47                 float computePercentID(string, string, int, int);
48                 
49                 vector<data_struct> runBellerophon(Sequence*, Sequence*, Sequence*);
50                 
51                                 
52 };
53
54 /***********************************************************************/
55
56 #endif
57
58