void fillGaps() { AreaMapping<AREA, MappingDesc> mapper(this->cellDescription); __cudaKernel(kernelFillGaps) (mapper.getGridDim(), TileSize) (particlesBuffer->getDeviceParticleBox(), mapper); __cudaKernel(kernelFillGapsLastFrame) (mapper.getGridDim(), TileSize) (particlesBuffer->getDeviceParticleBox(), mapper); }
void shiftParticles() { StrideMapping<AREA, DIM3, MappingDesc> mapper(this->cellDescription); ParticlesBoxType pBox = particlesBuffer->getDeviceParticleBox(); __startTransaction(__getTransactionEvent()); do { __cudaKernel(kernelShiftParticles) (mapper.getGridDim(), TileSize) (pBox, mapper); } while (mapper.next()); __setTransactionEvent(__endTransaction()); }
ParticlesBoxType getDeviceParticlesBox() { return particlesBuffer->getDeviceParticleBox(); }