| 44 | 
  | 
#include "utils/simError.h" | 
| 45 | 
  | 
namespace oopse { | 
| 46 | 
  | 
 | 
| 47 | 
< | 
SimSnapshotManager::SimSnapshotManager(SimInfo* info) : info_(info){ | 
| 47 | 
> | 
SimSnapshotManager::SimSnapshotManager(SimInfo* info, int storageLayout = 255)  | 
| 48 | 
> | 
    : SnapshotManager(storageLayout), info_(info){ | 
| 49 | 
> | 
 | 
| 50 | 
  | 
    int nAtoms = info_->getNAtoms(); | 
| 51 | 
  | 
    int nRigidBodies = info_->getNRigidBodies(); | 
| 52 | 
  | 
     | 
| 53 | 
  | 
    //allocate memory for snapshots | 
| 54 | 
< | 
    previousSnapshot_ = new Snapshot(nAtoms, nRigidBodies); | 
| 55 | 
< | 
    currentSnapshot_ = new Snapshot(nAtoms, nRigidBodies); | 
| 54 | 
> | 
    previousSnapshot_ = new Snapshot(nAtoms, nRigidBodies, storageLayout); | 
| 55 | 
> | 
    currentSnapshot_ = new Snapshot(nAtoms, nRigidBodies, storageLayout); | 
| 56 | 
  | 
} | 
| 57 | 
  | 
 | 
| 58 | 
+ | 
SimSnapshotManager::~SimSnapshotManager(){ | 
| 59 | 
+ | 
    delete previousSnapshot_; | 
| 60 | 
+ | 
    delete currentSnapshot_; | 
| 61 | 
+ | 
    previousSnapshot_ = NULL; | 
| 62 | 
+ | 
    currentSnapshot_ = NULL; | 
| 63 | 
+ | 
} | 
| 64 | 
  | 
bool SimSnapshotManager::advance() { | 
| 65 | 
  | 
 | 
| 66 | 
  | 
    *previousSnapshot_ = *currentSnapshot_; |