| 58 | 
  | 
   * @class DataStorage | 
| 59 | 
  | 
   * @warning do not try to insert element into (or ease element from) private member data  | 
| 60 | 
  | 
   * of DataStorage directly. | 
| 61 | 
< | 
   * @todo DataStorage may need refactorying. Every std::vector can inherit from the same base class | 
| 61 | 
> | 
   * @todo DataStorage may need refactoring. Every std::vector can inherit from the same base class | 
| 62 | 
  | 
   * which will make it easy to maintain | 
| 63 | 
  | 
   */ | 
| 64 | 
  | 
  class DataStorage { | 
| 72 | 
  | 
      dslElectroFrame = 16, | 
| 73 | 
  | 
      dslZAngle = 32, | 
| 74 | 
  | 
      dslForce = 64,  | 
| 75 | 
< | 
      dslTorque = 128 | 
| 75 | 
> | 
      dslTorque = 128, | 
| 76 | 
> | 
      dslParticlePot = 256 | 
| 77 | 
  | 
    }; | 
| 78 | 
  | 
 | 
| 79 | 
  | 
 | 
| 80 | 
  | 
    DataStorage(); | 
| 81 | 
< | 
    DataStorage(int size, int storageLayout = 255); | 
| 81 | 
> | 
    DataStorage(int size, int storageLayout = 511); | 
| 82 | 
  | 
    /** return the size of this DataStorage. */ | 
| 83 | 
  | 
    int getSize(); | 
| 84 | 
  | 
    /** | 
| 116 | 
  | 
    std::vector<RealType> zAngle;              /** z -angle array */         | 
| 117 | 
  | 
    std::vector<Vector3d> force;               /** force array */ | 
| 118 | 
  | 
    std::vector<Vector3d> torque;               /** torque array */ | 
| 119 | 
+ | 
    std::vector<RealType> particlePot;         /** pair potential arrray */ | 
| 120 | 
  | 
 | 
| 121 | 
  | 
    static int getBytesPerStuntDouble(int layout); | 
| 122 | 
  | 
 | 
| 126 | 
  | 
             | 
| 127 | 
  | 
    RealType* internalGetArrayPointer(std::vector<RotMat3x3d>& v); | 
| 128 | 
  | 
    RealType* internalGetArrayPointer(std::vector<RealType>& v); | 
| 129 | 
+ | 
 | 
| 130 | 
  | 
             | 
| 131 | 
  | 
    template<typename T> | 
| 132 | 
  | 
    void internalResize(std::vector<T>& v, int newSize); |