int startIndex = pid * numSeqsPerProcessor;
if(pid == (processors - 1)){ numSeqsPerProcessor = numSeqs - pid * numSeqsPerProcessor; }
-
//align your part
driverMPI(startIndex, numSeqsPerProcessor, inMPI, outMPI, outMPIAccnos, MPIPos);
if(processors == 1){
ifstream inFASTA;
openInputFile(fastafile, inFASTA);
- numSeqs=count(istreambuf_iterator<char>(inFASTA),istreambuf_iterator<char>(), '>');
+ getNumSeqs(inFASTA, numSeqs);
inFASTA.close();
lines.push_back(new linePair(0, numSeqs));
lines.push_back(new linePair(startPos, numSeqsPerProcessor));
}
-
createProcesses(outputFileName, fastafile, accnosFileName);
rename((outputFileName + toString(processIDS[0]) + ".temp").c_str(), outputFileName.c_str());
#else
ifstream inFASTA;
openInputFile(fastafile, inFASTA);
- numSeqs=count(istreambuf_iterator<char>(inFASTA),istreambuf_iterator<char>(), '>');
+ getNumSeqs(inFASTA, numSeqs);
inFASTA.close();
lines.push_back(new linePair(0, numSeqs));