--- trunk/src/io/DumpReader.cpp 2013/06/16 15:15:42 1879 +++ trunk/src/io/DumpReader.cpp 2014/01/16 16:00:43 1964 @@ -43,6 +43,10 @@ #define _LARGEFILE_SOURCE64 #define _FILE_OFFSET_BITS 64 +#ifdef IS_MPI +#include +#endif + #include #include @@ -59,10 +63,6 @@ #include "utils/MemoryUtils.hpp" #include "utils/StringTokenizer.hpp" #include "brains/Thermo.hpp" - -#ifdef IS_MPI -#include -#endif namespace OpenMD { @@ -520,7 +520,6 @@ namespace OpenMD { } } - } @@ -560,8 +559,11 @@ namespace OpenMD { if (i >> siteIndex) { // chew up this token and parse as an int: siteIndex = tokenizer.nextTokenAsInt(); - RigidBody* rb = static_cast(sd); - sd = rb->getAtoms()[siteIndex]; + + if (sd->isRigidBody()) { + RigidBody* rb = static_cast(sd); + sd = rb->getAtoms()[siteIndex]; + } } /**