X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=slayer.h;h=eeefc62392b64cdb0eb5797cba1c994b27058f50;hp=e898989b17fa73020a367fef11fa1d3b0f688565;hb=1a20e24ee786195ab0e1cccd4f5aede7a88f3f4e;hpb=05a0195e07c42c996592ee1c8abb63adedb7f493 diff --git a/slayer.h b/slayer.h index e898989..eeefc62 100644 --- a/slayer.h +++ b/slayer.h @@ -11,18 +11,17 @@ #include "sequence.hpp" +#include "chimera.h" /***********************************************************************/ //This class was modeled after the chimeraSlayer written by the Broad Institute /***********************************************************************/ -struct data_struct { //not right needs work... - int regionStart; - int regionEnd; - string parent; - float queryToParent; - float queryToParentLocal; - float divR; +struct snps { + char queryChar; + char parentAChar; + char parentBChar; }; + /***********************************************************************/ @@ -30,24 +29,31 @@ class Slayer { public: - Slayer(int, int, int, float); + Slayer(int, int, int, float, int, int, int); ~Slayer() {}; - void getResults(Sequence*, vector); - //float getPercentID() { return percentIdenticalQueryChimera; } - //vector getOutput() { return outputResults; } + string getResults(Sequence, vector); + vector getOutput() { return outputResults; } private: - int windowSize, windowStep, parentFragmentThreshold; + int windowSize, windowStep, parentFragmentThreshold, iters, percentSNPSample, minBS; float divRThreshold; + vector outputResults; + vector< map > baseSpots; + Sequence myQuery; - void verticalFilter(vector); + map verticalFilter(Sequence&, Sequence&, Sequence&); float computePercentID(string, string, int, int); - vector runBellerophon(Sequence*, Sequence*, Sequence*); - + vector runBellerophon(Sequence, Sequence, Sequence, map&); + vector getSNPS(string, string, string, int, int); + int bootstrapSNPS(vector, vector, float&, float&, int); + float snpQA(vector); + float snpQB(vector); + float snpAB(vector); + MothurOut* m; };