the group it is in and the abundance is equal to the OTU number. */
-using namespace std;
-
#include "datavector.hpp"
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"
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<individual>::iterator begin();
vector<individual>::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();
int numBins;
int numSeqs;
bool needToUpdate;
- void updateStats();
+ void set(int, int, int, string); //index, OTU, abundance, group
+
};
#endif