--- branches/development/src/io/DumpReader.cpp 2012/08/29 18:13:11 1787 +++ branches/development/src/io/DumpReader.cpp 2013/02/20 15:39:39 1850 @@ -35,7 +35,7 @@ * * [1] Meineke, et al., J. Comp. Chem. 26, 252-271 (2005). * [2] Fennell & Gezelter, J. Chem. Phys. 124, 234104 (2006). - * [3] Sun, Lin & Gezelter, J. Chem. Phys. 128, 24107 (2008). + * [3] Sun, Lin & Gezelter, J. Chem. Phys. 128, 234107 (2008). * [4] Kuang & Gezelter, J. Chem. Phys. 133, 164101 (2010). * [5] Vardeman, Stocker & Gezelter, J. Chem. Theory Comput. 7, 834 (2011). */ @@ -75,7 +75,8 @@ namespace OpenMD { if (worldRank == 0) { #endif - inFile_ = new std::ifstream(filename_.c_str()); + inFile_ = new std::ifstream(filename_.c_str(), + ifstream::in | ifstream::binary); if (inFile_->fail()) { sprintf(painCave.errMsg, @@ -140,7 +141,7 @@ namespace OpenMD { prevPos = currPos; bool foundOpenSnapshotTag = false; bool foundClosedSnapshotTag = false; - bool foundOpenSiteDataTag = false; + while(inFile_->getline(buffer, bufferSize)) { ++lineNo; @@ -201,7 +202,7 @@ namespace OpenMD { #ifdef IS_MPI } - MPI_Bcast(&nframes_, 1, MPI_INT, 0, MPI_COMM_WORLD); + MPI::COMM_WORLD.Bcast(&nframes_, 1, MPI::INT, 0); #endif // is_mpi @@ -287,17 +288,18 @@ namespace OpenMD { } int sendBufferSize = sendBuffer.size(); - MPI_Bcast(&sendBufferSize, 1, MPI_INT, masterNode, MPI_COMM_WORLD); - MPI_Bcast((void *)sendBuffer.c_str(), sendBufferSize, MPI_CHAR, masterNode, MPI_COMM_WORLD); + MPI::COMM_WORLD.Bcast(&sendBufferSize, 1, MPI::INT, masterNode); + MPI::COMM_WORLD.Bcast((void *)sendBuffer.c_str(), sendBufferSize, + MPI::CHAR, masterNode); sstream.str(sendBuffer); } else { int sendBufferSize; - MPI_Bcast(&sendBufferSize, 1, MPI_INT, masterNode, MPI_COMM_WORLD); + MPI::COMM_WORLD.Bcast(&sendBufferSize, 1, MPI::INT, masterNode); char * recvBuffer = new char[sendBufferSize+1]; assert(recvBuffer); recvBuffer[sendBufferSize] = '\0'; - MPI_Bcast(recvBuffer, sendBufferSize, MPI_CHAR, masterNode, MPI_COMM_WORLD); + MPI::COMM_WORLD.Bcast(recvBuffer, sendBufferSize, MPI::CHAR, masterNode); sstream.str(recvBuffer); delete [] recvBuffer; }