40#ifndef LM_RDME_CUDABYTELATTICE_H_
41#define LM_RDME_CUDABYTELATTICE_H_
uint32_t particle_t
Definition ByteLatticeExtended.h:19
uint32_t lattice_size_t
Definition Lattice.h:55
uint32_t site_t
Definition Lattice.h:74
double si_dist_t
Definition Types.h:63
unsigned int uint
Definition Types.h:52
CudaByteLattice(lattice_coord_t size, si_dist_t spacing, uint particlesPerSite)
ByteLattice(lattice_coord_t size, si_dist_t spacing, uint particlesPerSite)
Definition ByteLattice.cpp:57
virtual void swapSrcDest()
bool isGPUMemorySynched
Definition CudaByteLattice.h:93
virtual void addParticle(lattice_size_t index, particle_t particle)
Add a particle to the specified site.
void * cudaSiteTypes
Definition CudaByteLattice.h:92
virtual void addParticle(lattice_size_t x, lattice_size_t y, lattice_size_t z, particle_t particle)
Add a particle to the specified site.
size_t cudaSiteTypesSize
Definition CudaByteLattice.h:91
void * cudaParticles[2]
Definition CudaByteLattice.h:90
CudaByteLattice(lattice_coord_t size, si_dist_t spacing, uint particlesPerSite)
virtual void allocateCudaMemory()
virtual ~CudaByteLattice()
virtual void setFromRowMajorByteData(void *buffer, size_t bufferSize)
virtual void removeParticles(lattice_size_t index)
Remove a particle to the specified site.
virtual void * getGPUMemoryDest()
virtual void removeParticles(lattice_size_t x, lattice_size_t y, lattice_size_t z)
Remove a particle to the specified site.
virtual void deallocateCudaMemory()
virtual void getParticleLatticeView(uint8_t **particleLattice, int *Nw, int *Nz, int *Ny, int *Nx, int *Np)
virtual void setSiteType(lattice_size_t index, site_t site)
Set the site type at the specified location.
virtual void copyFromGPU()
size_t cudaParticlesSize
Definition CudaByteLattice.h:89
virtual void getSiteLatticeView(uint8_t **siteLattice, int *Nz, int *Ny, int *Nx)
virtual void removeAllParticles()
Empty all particles from the specified site.
virtual void * getGPUMemorySiteTypes()
CudaByteLattice(lattice_size_t xSize, lattice_size_t ySize, lattice_size_t zSize, si_dist_t spacing, uint particlesPerSite)
virtual void * getGPUMemorySrc()
virtual size_t getParticleMemorySize() const
Definition CudaByteLattice.h:66
virtual void setSiteType(lattice_size_t x, lattice_size_t y, lattice_size_t z, site_t site)
Set the site type at the specified location.
uint cudaParticlesCurrent
Definition CudaByteLattice.h:88
lattice_coord_t size
Definition Lattice.h:256
si_dist_t spacing
Definition Lattice.h:258
Definition LatticeBuilder.h:60
Definition Capsule.cpp:46
Type to store a lattice coordinate.
Definition Lattice.h:59