if (namefile != "") {
nameMap = new NameAssignment(namefile);
nameMap->readMap();
- }else{ nameMap= new NameAssignment(); }
+ }else if (countfile != "") {
+ ct = new CountTable();
+ ct->readTable(countfile, false);
+ nameMap= new NameAssignment();
+ vector<string> tempNames = ct->getNamesOfSeqs();
+ for (int i = 0; i < tempNames.size(); i++) { nameMap->push_back(tempNames[i]); }
+ }else{ nameMap= new NameAssignment(); }
string fileroot = outputDir + m->getRootName(m->getSimpleName(blastfile));
string tag = "";
RAbundVector* rabund = NULL;
if(countfile != "") {
- //map<string, int> nameMapCounts = m->readNames(namefile);
- ct = new CountTable();
- ct->readTable(countfile);
rabund = new RAbundVector();
createRabund(ct, list, rabund);
}else {
map<string, string> variables;
variables["[filename]"] = fileroot;
- if (countfile != "") { variables["[tag2]"] = "unique_list"; }
variables["[clustertag]"] = tag;
string sabundFileName = getOutputFileName("sabund", variables);
string rabundFileName = getOutputFileName("rabund", variables);
+ if (countfile != "") { variables["[tag2]"] = "unique_list"; }
string listFileName = getOutputFileName("list", variables);
if (countfile == "") {
outputTypes.clear();
return 0;
}
-
+
+
//cluster using cluster classes
while (distMatrix->getSmallDist() < cutoff && distMatrix->getNNodes() > 0){
+ if (m->debug) { cout << "numNodes=" << distMatrix->getNNodes() << " smallDist = " << distMatrix->getSmallDist() << endl; }
+
cluster->update(cutoff);
if (m->control_pressed) {