| 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 | 
  | 
     | 
| 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 | 
+ | 
      info_->getComAll(com, comvel); | 
| 250 | 
+ | 
      comw = info_->getAngularMomentum(); | 
| 251 | 
+ | 
      s->setCOMprops(com, comvel, comw);       | 
| 252 | 
+ | 
    } | 
| 253 | 
+ | 
 | 
| 254 | 
  | 
  }  | 
| 255 | 
  | 
    | 
| 256 | 
  | 
  void DumpReader::readSet(int whichFrame) {      | 
| 349 | 
  | 
    } | 
| 350 | 
  | 
    std::string type = tokenizer.nextToken();  | 
| 351 | 
  | 
    int size = type.size(); | 
| 352 | 
+ | 
 | 
| 353 | 
  | 
    for(int i = 0; i < size; ++i) { | 
| 354 | 
  | 
      switch(type[i]) { | 
| 355 | 
  | 
         | 
| 410 | 
  | 
               integrableObject->setJ(ji);  | 
| 411 | 
  | 
             }  | 
| 412 | 
  | 
          } | 
| 413 | 
+ | 
          break; | 
| 414 | 
  | 
        }   | 
| 415 | 
  | 
        case 'f': { | 
| 416 | 
  | 
 |