class SharedOrderVector;
class SharedSAbundVector;
class SharedRAbundVector;
+class SharedRAbundFloatVector;
+class GroupMap;
class DataVector {
DataVector(string l) : label(l) {};
DataVector(const DataVector& dv) : label(dv.label){};//, maxRank(dv.maxRank), numBins(dv.numBins), numSeqs(dv.numSeqs) {};
DataVector(ifstream&);
+ DataVector(ifstream&, GroupMap*);
virtual ~DataVector(){};
// virtual int getNumBins() { return numBins; }
virtual void resize(int) = 0;
virtual int size() = 0;
virtual void print(ostream&) = 0;
+ virtual void printHeaders(ostream&) {};
virtual void clear() = 0;
void setLabel(string l) { label = l; }