#include "blastdb.hpp"
#include "referencedb.h"
-
/**************************************************************************************************/
-AlignmentDB::AlignmentDB(string fastaFileName, string s, int kmerSize, float gapOpen, float gapExtend, float match, float misMatch){ // This assumes that the template database is in fasta format, may
+AlignmentDB::AlignmentDB(string fastaFileName, string s, int kmerSize, float gapOpen, float gapExtend, float match, float misMatch, int tid){ // This assumes that the template database is in fasta format, may
try { // need to alter this in the future?
m = MothurOut::getInstance();
longest = 0;
method = s;
bool needToGenerate = true;
ReferenceDB* rdb = ReferenceDB::getInstance();
+ bool silent = false;
+ threadID = tid;
+
+ if (fastaFileName == "saved-silent") {
+ fastaFileName = "saved"; silent = true;
+ }
if (fastaFileName == "saved") {
int start = time(NULL);
- m->mothurOutEndLine(); m->mothurOut("Using sequences from " + rdb->getSavedReference() + " that are saved in memory."); m->mothurOutEndLine();
+
+ if (!silent) { m->mothurOutEndLine(); m->mothurOut("Using sequences from " + rdb->getSavedReference() + " that are saved in memory."); m->mothurOutEndLine(); }
for (int i = 0; i < rdb->referenceSeqs.size(); i++) {
templateSequences.push_back(rdb->referenceSeqs[i]);
fastaFileName = rdb->getSavedReference();
numSeqs = templateSequences.size();
- m->mothurOut("It took " + toString(time(NULL) - start) + " to load " + toString(rdb->referenceSeqs.size()) + " sequences.");m->mothurOutEndLine();
+ if (!silent) { m->mothurOut("It took " + toString(time(NULL) - start) + " to load " + toString(rdb->referenceSeqs.size()) + " sequences.");m->mothurOutEndLine(); }
}else {
int start = time(NULL);
#ifdef USE_MPI
int pid, processors;
- vector<unsigned long int> positions;
+ vector<unsigned long long> positions;
MPI_Status status;
MPI_File inMPI;
m->mothurOut("DONE.");
m->mothurOutEndLine(); cout.flush();
- m->mothurOut("It took " + toString(time(NULL) - start) + " to read " + toString(rdb->referenceSeqs.size()) + " sequences."); m->mothurOutEndLine();
+ m->mothurOut("It took " + toString(time(NULL) - start) + " to read " + toString(templateSequences.size()) + " sequences."); m->mothurOutEndLine();
}
#endif
}
else if(method == "suffix") { search = new SuffixDB(numSeqs); }
- else if(method == "blast") { search = new BlastDB(fastaFileName.substr(0,fastaFileName.find_last_of(".")+1), gapOpen, gapExtend, match, misMatch, ""); }
+ else if(method == "blast") { search = new BlastDB(fastaFileName.substr(0,fastaFileName.find_last_of(".")+1), gapOpen, gapExtend, match, misMatch, "", threadID); }
else {
+ method = "kmer";
m->mothurOut(method + " is not a valid search option. I will run the command using kmer, ksize=8.");
m->mothurOutEndLine();
search = new KmerDB(fastaFileName, 8);
method = s;
if(method == "suffix") { search = new SuffixDB(); }
- else if(method == "blast") { search = new BlastDB(""); }
+ else if(method == "blast") { search = new BlastDB("", 0); }
else { search = new KmerDB(); }