X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=kmerdb.cpp;fp=kmerdb.cpp;h=77d93daf4b6c8cf18a8be546fcd4eb41c0dc7301;hb=fdc1f6eaf544f695fc1511f24bddd7e6069c33ba;hp=7f7f26589cf6a5c8a566393db9ec76939eb7c0a9;hpb=aba5f8811829037b0a3004ef33f0ad4ed5e5fcf8;p=mothur.git diff --git a/kmerdb.cpp b/kmerdb.cpp index 7f7f265..77d93da 100644 --- a/kmerdb.cpp +++ b/kmerdb.cpp @@ -48,6 +48,8 @@ KmerDB::KmerDB(string fastaFileName, int kSize) : Database(), kmerSize(kSize) { } /**************************************************************************************************/ +KmerDB::KmerDB() : Database() {} +/**************************************************************************************************/ KmerDB::~KmerDB(){} @@ -204,6 +206,44 @@ vector KmerDB::getSequencesWithKmer(int kmer) { exit(1); } } +#ifdef USE_MPI +/**************************************************************************************************/ +int KmerDB::MPISend(int receiver) { + try { + + //send kmerSize - int + MPI_Send(&kmerSize, 1, MPI_INT, receiver, 2001, MPI_COMM_WORLD); + + return 0; + } + catch(exception& e) { + m->errorOut(e, "KmerDB", "MPISend"); + exit(1); + } +} +/**************************************************************************************************/ +int KmerDB::MPIRecv(int sender) { + try { + MPI_Status status; + + //receive kmerSize - int + MPI_Recv(&kmerSize, 1, MPI_INT, sender, 2001, MPI_COMM_WORLD, &status); + + //set maxKmer + int power4s[14] = { 1, 4, 16, 64, 256, 1024, 4096, 16384, 65536, 262144, 1048576, 4194304, 16777216, 67108864 }; + count = 0; + maxKmer = power4s[kmerSize]; + kmerLocations.resize(maxKmer+1); + + return 0; + } + catch(exception& e) { + m->errorOut(e, "KmerDB", "MPIRecv"); + exit(1); + } +} +#endif +/**************************************************************************************************/ /**************************************************************************************************/