X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=sharedrabundvector.h;h=419d15a15af7b73872c2678675aff1a4f564c759;hp=b69bc30657a1667665709df1d21653c05d574b3a;hb=1a20e24ee786195ab0e1cccd4f5aede7a88f3f4e;hpb=fd282e6b4be2560f5b1bd154a9e8d24b798eefaf diff --git a/sharedrabundvector.h b/sharedrabundvector.h index b69bc30..419d15a 100644 --- a/sharedrabundvector.h +++ b/sharedrabundvector.h @@ -10,61 +10,83 @@ * */ -#include #include "datavector.hpp" #include "sharedordervector.h" #include "sharedsabundvector.h" +#include "sharedrabundfloatvector.h" #include "rabundvector.hpp" +//#include "groupmap.h" -/* This class is a child to datavector. It represents OTU information at a certain distance. +/* DataStructure for a shared file. + This class is a child to datavector. It represents OTU information at a certain distance. It is similiar to an rabundvector except each member of data knows which group it belongs to. Each member of the internal container "data" is a struct of type individual. An individual which knows the OTU from which it came, the group it is in and its abundance. */ - class SharedRAbundVector : public DataVector { public: SharedRAbundVector(); SharedRAbundVector(int); //SharedRAbundVector(string, vector); - SharedRAbundVector(const SharedRAbundVector& bv) : DataVector(bv), data(bv.data), maxRank(bv.maxRank), numBins(bv.numBins), numSeqs(bv.numSeqs){}; -// SharedRAbundVector(ifstream&); + SharedRAbundVector(const SharedRAbundVector& bv) : DataVector(bv), data(bv.data), maxRank(bv.maxRank), numBins(bv.numBins), numSeqs(bv.numSeqs), group(bv.group), index(bv.index){}; + SharedRAbundVector(ifstream&); ~SharedRAbundVector(); int getNumBins(); int getNumSeqs(); int getMaxRank(); string getGroup(); - void setGroup(string); + void setGroup(string); + string getBinLabel(); + void setBinLabel(string); + int getGroupIndex(); + void setGroupIndex(int); void set(int, int, string); //OTU, abundance, groupname + void setData(vector ); individual get(int); + vector getData(); int getAbundance(int); - void push_back(int, int, string); //abundance, OTU, groupname + int numNZ(); + void sortD(); //Sorts the data in descending order. + void push_front(int, int, string); //abundance, otu, groupname + void insert(int, int, string); //abundance, otu, groupname + void push_back(int, string); //abundance, groupname void pop_back(); void resize(int); int size(); + void clear(); vector::reverse_iterator rbegin(); vector::reverse_iterator rend(); void print(ostream&); + void printHeaders(ostream&); RAbundVector getRAbundVector(); + RAbundVector getRAbundVector2(); SAbundVector getSAbundVector(); OrderVector getOrderVector(map*); SharedOrderVector getSharedOrderVector(); SharedSAbundVector getSharedSAbundVector(); SharedRAbundVector getSharedRAbundVector(); + vector getSharedRAbundVectors(); + vector getSharedRAbundFloatVectors(vector); private: vector data; + vector lookup; + //GlobalData* globaldata; + //GroupMap* groupmap; int maxRank; int numBins; int numSeqs; - string group; + string group; + int index; + + int eliminateZeroOTUS(vector&); };