walberla::gpu::communication::MemcpyPackInfo< GPUFieldType > Class Template Reference

#include <MemcpyPackInfo.h>

+ Inheritance diagram for walberla::gpu::communication::MemcpyPackInfo< GPUFieldType >:

Public Member Functions

 MemcpyPackInfo (BlockDataID pdfsID_)
 
 ~MemcpyPackInfo () override=default
 
void pack (stencil::Direction dir, unsigned char *buffer, IBlock *block, gpuStream_t stream) override
 
void communicateLocal (stencil::Direction dir, const IBlock *sender, IBlock *receiver, gpuStream_t stream) override
 
void unpack (stencil::Direction dir, unsigned char *buffer, IBlock *block, gpuStream_t stream) override
 
uint_t size (stencil::Direction dir, IBlock *block) override
 
- Public Member Functions inherited from walberla::gpu::GeneratedGPUPackInfo
 GeneratedGPUPackInfo ()=default
 
virtual ~GeneratedGPUPackInfo ()=default
 

Private Member Functions

uint_t numberOfGhostLayersToCommunicate (const GPUFieldType *const field) const
 

Private Attributes

BlockDataID pdfsID
 
uint_t numberOfGhostLayers_ {0}
 
bool communicateAllGhostLayers_ {true}
 

Constructor & Destructor Documentation

◆ MemcpyPackInfo()

template<typename GPUFieldType >
walberla::gpu::communication::MemcpyPackInfo< GPUFieldType >::MemcpyPackInfo ( BlockDataID  pdfsID_)
inline

◆ ~MemcpyPackInfo()

template<typename GPUFieldType >
walberla::gpu::communication::MemcpyPackInfo< GPUFieldType >::~MemcpyPackInfo ( )
overridedefault

Member Function Documentation

◆ communicateLocal()

template<typename GPUFieldType >
void walberla::gpu::communication::MemcpyPackInfo< GPUFieldType >::communicateLocal ( stencil::Direction  dir,
const IBlock sender,
IBlock receiver,
gpuStream_t  stream 
)
overridevirtual

◆ numberOfGhostLayersToCommunicate()

template<typename GPUFieldType >
uint_t walberla::gpu::communication::MemcpyPackInfo< GPUFieldType >::numberOfGhostLayersToCommunicate ( const GPUFieldType *const  field) const
private

◆ pack()

template<typename GPUFieldType >
void walberla::gpu::communication::MemcpyPackInfo< GPUFieldType >::pack ( stencil::Direction  dir,
unsigned char *  buffer,
IBlock block,
gpuStream_t  stream 
)
overridevirtual

◆ size()

template<typename GPUFieldType >
uint_t walberla::gpu::communication::MemcpyPackInfo< GPUFieldType >::size ( stencil::Direction  dir,
IBlock block 
)
overridevirtual

◆ unpack()

template<typename GPUFieldType >
void walberla::gpu::communication::MemcpyPackInfo< GPUFieldType >::unpack ( stencil::Direction  dir,
unsigned char *  buffer,
IBlock block,
gpuStream_t  stream 
)
overridevirtual

Member Data Documentation

◆ communicateAllGhostLayers_

template<typename GPUFieldType >
bool walberla::gpu::communication::MemcpyPackInfo< GPUFieldType >::communicateAllGhostLayers_ {true}
private

◆ numberOfGhostLayers_

template<typename GPUFieldType >
uint_t walberla::gpu::communication::MemcpyPackInfo< GPUFieldType >::numberOfGhostLayers_ {0}
private

◆ pdfsID

template<typename GPUFieldType >
BlockDataID walberla::gpu::communication::MemcpyPackInfo< GPUFieldType >::pdfsID
private

The documentation for this class was generated from the following files: