X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=sharedordervector.h;h=7d383ac84f431830e2324cd51d4777d80a3390e0;hp=a530ad65289a67a9c92cbeeb55c0ce661ef1ac8c;hb=050a3ff02473a3d4c0980964e1a9ebe52e55d6b8;hpb=eb1c88346fb246e95a6b38935b103f95e38b82ca diff --git a/sharedordervector.h b/sharedordervector.h index a530ad6..7d383ac 100644 --- a/sharedordervector.h +++ b/sharedordervector.h @@ -2,7 +2,7 @@ #define SHAREDORDER_H /* * sharedorder.h - * Dotur + * Mothur * * Created by Sarah Westcott on 12/9/08. * Copyright 2008 Schloss Lab UMASS Amherst. All rights reserved. @@ -15,8 +15,6 @@ the group it is in and the abundance is equal to the OTU number. */ -using namespace std; - #include "datavector.hpp" struct individual { @@ -26,13 +24,24 @@ struct individual { bool operator()(const individual& i1, const individual& i2) { return (i1.abundance > i2.abundance); } + individual() { group = ""; bin = 0; abundance = 0; } +}; + +struct individualFloat { + string group; + int bin; + float abundance; + bool operator()(const individual& i1, const individual& i2) { + return (i1.abundance > i2.abundance); + } + individualFloat() { group = ""; bin = 0; abundance = 0.0; } }; + #include "sabundvector.hpp" #include "rabundvector.hpp" #include "sharedrabundvector.h" #include "sharedsabundvector.h" -#include "globaldata.hpp" #include "groupmap.h" class SharedOrderVector : public DataVector { @@ -46,15 +55,16 @@ public: SharedOrderVector(ifstream&); ~SharedOrderVector(){}; - void set(int, int, int, string); //index, OTU, abundance, group + individual get(int); - void push_back(int, int, string); //OTU, abundance, group void resize(int); int size(); void print(ostream&); vector::iterator begin(); vector::iterator end(); - + void push_back(int, int, string); //OTU, abundance, group MUST CALL UPDATE STATS AFTER PUSHBACK!!! + void updateStats(); + void clear(); int getNumBins(); int getNumSeqs(); @@ -66,9 +76,9 @@ public: SharedOrderVector getSharedOrderVector(); SharedRAbundVector getSharedRAbundVector(string); //get the sharedRabundvector for a sepecific group SharedSAbundVector getSharedSAbundVector(string); //get the sharedSabundvector for a sepecific group + vector getSharedRAbundVector(); //returns sharedRabundVectors for all the users groups private: - GlobalData* globaldata; GroupMap* groupmap; vector data; map< int, vector >::iterator it; @@ -76,7 +86,8 @@ private: int numBins; int numSeqs; bool needToUpdate; - void updateStats(); + void set(int, int, int, string); //index, OTU, abundance, group + }; #endif