7 * Created by westcott on 9/25/09.
8 * Copyright 2009 Schloss Lab. All rights reserved.
13 #include "sequence.hpp"
15 /***********************************************************************/
16 //This class was modeled after the chimeraSlayer written by the Broad Institute
17 /***********************************************************************/
18 struct data_struct { //this is crazy big...but follow original.
45 /***********************************************************************/
46 //sorts lowest to highest first by bsMax, then if tie by chimeraMax
47 inline bool compareDataStruct(data_struct left, data_struct right){
48 if (left.bsMax < right.bsMax) { return true; }
49 else if (left.bsMax == right.bsMax) {
50 return (left.chimeraMax < right.chimeraMax);
51 }else { return false; }
53 /***********************************************************************/
60 /***********************************************************************/
67 Slayer(int, int, int, float, int);
70 string getResults(Sequence*, vector<Sequence*>);
71 vector<data_struct> getOutput() { return outputResults; }
76 int windowSize, windowStep, parentFragmentThreshold, iters;
78 vector<data_struct> outputResults;
80 map<int, int> verticalFilter(vector<Sequence*>);
81 float computePercentID(string, string, int, int);
83 vector<data_struct> runBellerophon(Sequence*, Sequence*, Sequence*);
84 vector<snps> getSNPS(string, string, string, int, int);
85 void bootstrapSNPS(vector<snps>, vector<snps>, float&, float&);
86 float snpQA(vector<snps>);
87 float snpQB(vector<snps>);
88 float snpAB(vector<snps>);
92 /***********************************************************************/