#include "fastamap.h"
#include "groupmap.h"
-class GlobalData;
-
typedef list<PCell>::iterator MatData;
+typedef map<int, float> SeqMap;
class GetOTURepCommand : public Command {
-
+
public:
- GetOTURepCommand();
+ GetOTURepCommand(string);
~GetOTURepCommand();
- int execute();
-
+ int execute();
+ void help();
+
private:
GlobalData* globaldata;
SparseMatrix* matrix;
ListVector* list;
- ListVector* listOfNames;
ReadOTUFile* read;
InputData* input;
FastaMap* fasta;
GroupMap* groupMap;
- string filename, fastafile, namesfile, groupfile;
+ string filename, fastafile, listfile, namesfile, groupfile, label;
ofstream out;
ifstream in, inNames;
bool groupError;
-
-
+
+ bool abort, allLines;
+ set<string> labels; //holds labels to be used
map<string, int> nameToIndex; //maps sequence name to index in sparsematrix
- map<int, string>::iterator it;
- map<int, string>::iterator it2;
- map<string, int>::iterator it3;
-
+
+ vector<SeqMap> seqVec; // contains maps with sequence index and distance
+ // for all distances related to a certain sequence
+
+
void readNamesFile();
int process(ListVector*);
- string FindRep(int, string&, ListVector*); // returns name of "representative" sequence of given bin. //and fill a string containing the groups in that bin if a groupfile is given
+ string findRep(int, string&, ListVector*, int&); // returns the name of the "representative" sequence of given bin,
+ // fills a string containing the groups in that bin if a groupfile is given,
+ // and returns the number of sequences in the given bin
};