| 126 |
|
//error |
| 127 |
|
std::cerr << "size does not match"<< std::endl; |
| 128 |
|
} |
| 129 |
+ |
|
| 130 |
+ |
if (storageLayout_ & dslSkippedCharge && skippedCharge.size() != size_) { |
| 131 |
+ |
//error |
| 132 |
+ |
std::cerr << "size does not match"<< std::endl; |
| 133 |
+ |
} |
| 134 |
|
|
| 135 |
|
return size_; |
| 136 |
|
|
| 190 |
|
internalResize(electricField, newSize); |
| 191 |
|
} |
| 192 |
|
|
| 193 |
+ |
if (storageLayout_ & dslSkippedCharge) { |
| 194 |
+ |
internalResize(skippedCharge, newSize); |
| 195 |
+ |
} |
| 196 |
+ |
|
| 197 |
|
size_ = newSize; |
| 198 |
|
} |
| 199 |
|
|
| 248 |
|
|
| 249 |
|
if (storageLayout_ & dslElectricField) { |
| 250 |
|
electricField.reserve(size); |
| 251 |
+ |
} |
| 252 |
+ |
|
| 253 |
+ |
if (storageLayout_ & dslSkippedCharge) { |
| 254 |
+ |
skippedCharge.reserve(size); |
| 255 |
|
} |
| 256 |
|
|
| 257 |
|
} |
| 312 |
|
if (storageLayout_ & dslElectricField) { |
| 313 |
|
internalCopy(electricField, source, num, target); |
| 314 |
|
} |
| 315 |
+ |
|
| 316 |
+ |
if (storageLayout_ & dslSkippedCharge) { |
| 317 |
+ |
internalCopy(skippedCharge, source, num, target); |
| 318 |
+ |
} |
| 319 |
|
} |
| 320 |
|
|
| 321 |
|
int DataStorage::getStorageLayout() { |
| 381 |
|
case dslElectricField: |
| 382 |
|
return internalGetArrayPointer(electricField); |
| 383 |
|
break; |
| 384 |
+ |
|
| 385 |
+ |
case dslSkippedCharge: |
| 386 |
+ |
return internalGetArrayPointer(skippedCharge); |
| 387 |
+ |
break; |
| 388 |
|
|
| 389 |
|
default: |
| 390 |
|
//error message |
| 494 |
|
if (layout & dslElectricField) { |
| 495 |
|
bytes += sizeof(Vector3d); |
| 496 |
|
} |
| 497 |
+ |
if (layout & dslSkippedCharge) { |
| 498 |
+ |
bytes += sizeof(RealType); |
| 499 |
+ |
} |
| 500 |
|
|
| 501 |
|
return bytes; |
| 502 |
|
} |