X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=groupmap.h;h=d0e43c5b16a8989786146ec2026b18bbd86c8121;hb=d4cd876bd09bfa1bcb137261700eae79f9e41fc0;hp=d03880d9814fac255613daa381f6d63b4ccfba4a;hpb=bfbc55964f1977da72c2cea984288a427d370a59;p=mothur.git diff --git a/groupmap.h b/groupmap.h index d03880d..d0e43c5 100644 --- a/groupmap.h +++ b/groupmap.h @@ -10,7 +10,7 @@ */ #include "mothur.h" -#include "utilities.hpp" +#include "mothurout.h" /* This class is a representation of the groupfile. It is used by all the shared commands to determine what group a certain sequence belongs to. */ @@ -20,20 +20,27 @@ public: GroupMap() {}; GroupMap(string); ~GroupMap(); - void readMap(); + int readMap(); + int readDesignMap(); int getNumGroups(); + bool isValidGroup(string); //return true if string is a valid group string getGroup(string); void setGroup(string, string); vector namesOfGroups; - map groupIndex; //groupname, vectorIndex in namesOfGroups. - used by collectdisplays. - + map groupIndex; //groupname, vectorIndex in namesOfGroups. - used by collectdisplays and libshuff commands. + int getNumSeqs() { return groupmap.size(); } + vector getNamesSeqs(); + int getNumSeqs(string); //return the number of seqs in a given group + private: + MothurOut* m; ifstream fileHandle; string groupFileName; int index; map::iterator it; void setNamesOfGroups(string); map groupmap; //sequence name and groupname + map seqsPerGroup; //maps groupname to number of seqs in that group }; #endif