]> git.donarmstrong.com Git - mothur.git/blobdiff - sharedrabundvector.h
sffinfo bug with flow grams right index when clipQualRight=0
[mothur.git] / sharedrabundvector.h
index 14ec1b8e95d1aebea828c804ea1abc2e75b27217..419d15a15af7b73872c2678675aff1a4f564c759 100644 (file)
 #include "datavector.hpp"
 #include "sharedordervector.h"
 #include "sharedsabundvector.h"
+#include "sharedrabundfloatvector.h"
 #include "rabundvector.hpp"
-#include "groupmap.h"
+//#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 GlobalData;
 
 class SharedRAbundVector : public DataVector {
        
@@ -39,6 +40,8 @@ public:
        int getMaxRank();
        string getGroup();
        void setGroup(string);
+       string getBinLabel();
+       void setBinLabel(string);
        int getGroupIndex();
        void setGroupIndex(int);                                                                
 
@@ -51,14 +54,16 @@ public:
        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, int, string);  //abundance, otu, groupname
+       void push_back(int, string);  //abundance, groupname
        void pop_back();
        void resize(int);
        int size();
+       void clear();
        vector<individual>::reverse_iterator rbegin();
        vector<individual>::reverse_iterator rend();
        
        void print(ostream&);
+       void printHeaders(ostream&);
                
        RAbundVector getRAbundVector();
        RAbundVector getRAbundVector2();
@@ -68,17 +73,20 @@ public:
        SharedSAbundVector getSharedSAbundVector();
        SharedRAbundVector getSharedRAbundVector();
        vector<SharedRAbundVector*> getSharedRAbundVectors();
+       vector<SharedRAbundFloatVector*> getSharedRAbundFloatVectors(vector<SharedRAbundVector*>);
        
 private:
        vector<individual>  data; 
        vector<SharedRAbundVector*> lookup;
-       GlobalData* globaldata;
-       GroupMap* groupmap;
+       //GlobalData* globaldata;
+       //GroupMap* groupmap;
        int maxRank;
        int numBins;
        int numSeqs;
        string group;
        int index;      
+       
+       int eliminateZeroOTUS(vector<SharedRAbundVector*>&);
 };