X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=classify.h;h=4e0354782e5063e2a52268e88a1412b40db3c28e;hb=0cefb55a2616975bd4a144fc345693695ffc9bb6;hp=2926800284ce00cbb7ceb2768bfbe35f28a44a80;hpb=63e089e0b3aad1741bab60119ed7ccc784dce347;p=mothur.git diff --git a/classify.h b/classify.h index 2926800..4e03547 100644 --- a/classify.h +++ b/classify.h @@ -11,37 +11,47 @@ */ -/* This class is a parent to phylotyp, bayesian, knn. */ +/* This class is a parent to bayesian, knn. */ #include "mothur.h" #include "database.hpp" - +#include "phylotree.h" class Sequence; + /**************************************************************************************************/ class Classify { public: - Classify(string, string, string, int, int, int, int, int); - Classify(){}; - + Classify(); virtual ~Classify(){}; virtual string getTaxonomy(Sequence*) = 0; + virtual string getSimpleTax() { return simpleTax; } + virtual bool getFlipped() { return flipped; } + virtual void generateDatabaseAndNames(string, string, string, int, float, float, float, float); + virtual void setDistName(string s) {} //for knn, so if distance method is selected with knn you can create the smallest distance file in the right place. protected: map taxonomy; //name maps to taxonomy + //map genusCount; //maps genus to count - in essence a list of how many seqs are in each taxonomy + map::iterator itTax; map::iterator it; Database* database; + PhyloTree* phyloTree; - string taxFile, templateFile; + string taxFile, templateFile, simpleTax; vector names; + int threadID; + bool flip, flipped; + + int readTaxonomy(string); + vector parseTax(string); + MothurOut* m; - void readTaxonomy(string); - }; /**************************************************************************************************/