| 70 | 
  | 
namespace oopse {  | 
| 71 | 
  | 
    | 
| 72 | 
  | 
  DumpReader::DumpReader(SimInfo* info, const std::string& filename)  | 
| 73 | 
< | 
    : info_(info), filename_(filename), isScanned_(false), nframes_(0) {  | 
| 73 | 
> | 
    : info_(info), filename_(filename), isScanned_(false), nframes_(0), needCOMprops_(false) {  | 
| 74 | 
  | 
     | 
| 75 | 
  | 
#ifdef IS_MPI  | 
| 76 | 
  | 
     | 
| 92 | 
  | 
    }  | 
| 93 | 
  | 
     | 
| 94 | 
  | 
    strcpy(checkPointMsg, "Dump file opened for reading successfully.");  | 
| 95 | 
< | 
    MPIcheckPoint();  | 
| 95 | 
> | 
    errorCheckPoint();  | 
| 96 | 
  | 
     | 
| 97 | 
  | 
#endif  | 
| 98 | 
  | 
     | 
| 113 | 
  | 
    }  | 
| 114 | 
  | 
     | 
| 115 | 
  | 
    strcpy(checkPointMsg, "Dump file closed successfully.");  | 
| 116 | 
< | 
    MPIcheckPoint();  | 
| 116 | 
> | 
    errorCheckPoint();  | 
| 117 | 
  | 
     | 
| 118 | 
  | 
#endif  | 
| 119 | 
  | 
     | 
| 240 | 
  | 
    }  | 
| 241 | 
  | 
      | 
| 242 | 
  | 
    readSet(whichFrame);  | 
| 243 | 
+ | 
 | 
| 244 | 
+ | 
    if (needCOMprops_) { | 
| 245 | 
+ | 
      Snapshot* s = info_->getSnapshotManager()->getCurrentSnapshot(); | 
| 246 | 
+ | 
      Vector3d com; | 
| 247 | 
+ | 
      Vector3d comvel; | 
| 248 | 
+ | 
      Vector3d comw; | 
| 249 | 
+ | 
      if (needPos_ && needVel_){ | 
| 250 | 
+ | 
        info_->getComAll(com, comvel); | 
| 251 | 
+ | 
        comw = info_->getAngularMomentum(); | 
| 252 | 
+ | 
      }else{ | 
| 253 | 
+ | 
        com = info_->getCom(); | 
| 254 | 
+ | 
        comvel = 0.0; | 
| 255 | 
+ | 
        comw   = 0.0; | 
| 256 | 
+ | 
      } | 
| 257 | 
+ | 
      s->setCOMprops(com, comvel, comw);       | 
| 258 | 
+ | 
    } | 
| 259 | 
+ | 
 | 
| 260 | 
  | 
  }  | 
| 261 | 
  | 
    | 
| 262 | 
  | 
  void DumpReader::readSet(int whichFrame) {      |