--- branches/development/src/io/DumpReader.cpp 2012/09/06 19:44:06 1794
+++ branches/development/src/io/DumpReader.cpp 2013/05/17 14:41:42 1875
@@ -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).
*/
@@ -128,7 +128,7 @@ namespace OpenMD {
}
void DumpReader::scanFile(void) {
- int lineNo = 0;
+
std::streampos prevPos;
std::streampos currPos;
@@ -141,7 +141,8 @@ namespace OpenMD {
prevPos = currPos;
bool foundOpenSnapshotTag = false;
bool foundClosedSnapshotTag = false;
- bool foundOpenSiteDataTag = false;
+
+ int lineNo = 0;
while(inFile_->getline(buffer, bufferSize)) {
++lineNo;
@@ -202,7 +203,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
@@ -288,17 +289,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;
}
@@ -526,7 +528,7 @@ namespace OpenMD {
StringTokenizer tokenizer(line);
int nTokens;
-
+
nTokens = tokenizer.countTokens();
if (nTokens < 2) {
@@ -646,14 +648,12 @@ namespace OpenMD {
void DumpReader::readSiteData(std::istream& inputStream) {
- inputStream.getline(buffer, bufferSize);
std::string line(buffer);
+
+ // We already found the starting tag or we wouldn't be
+ // here, so just start parsing until we get to the ending
+ // tag:
- if (line.find("") == std::string::npos) {
- // site data isn't required for a simulation, so skip
- return;
- }
-
while(inputStream.getline(buffer, bufferSize)) {
line = buffer;