OpenFPM_pdata  4.1.0
Project that contain the implementation of distributed structures
 
Loading...
Searching...
No Matches
sparsegridgpu_pack_impl< AggregateT, dataBuffer_type, prp > Struct Template Reference

this class is a functor for "for_each" algorithm More...

Detailed Description

template<typename AggregateT, typename dataBuffer_type, int ... prp>
struct sparsegridgpu_pack_impl< AggregateT, dataBuffer_type, prp >

this class is a functor for "for_each" algorithm

This class is a functor for "for_each" algorithm. For each element of the boost::vector the operator() is called. Is mainly used to calculate the size to pack a point

Template Parameters
prpset for properties

Definition at line 257 of file SparseGridGpu_ker_util.hpp.

#include <SparseGridGpu_ker_util.hpp>

Public Types

typedef to_boost_vmpl< prp... >::type vprp
 

Public Member Functions

__device__ __host__ sparsegridgpu_pack_impl (unsigned int dataBlockPos, unsigned int offset, dataBuffer_type &dataBuff, unsigned int ppos, void *(&data_ptr)[sizeof...(prp)+1], unsigned int n_pnt)
 constructor
 
template<typename T >
__device__ __host__ void operator() (T &t)
 It call the copy function for each property.
 

Data Fields

unsigned int dataBlockPos
 position of the block
 
unsigned int offset
 offset
 
dataBuffer_type & dataBuff
 data buffer
 
unsigned int ppos
 point
 
void *(& data_ptr )[sizeof...(prp)+1]
 data pointer
 
unsigned int n_pnt
 Number of points to pack.
 

Member Typedef Documentation

◆ vprp

template<typename AggregateT , typename dataBuffer_type , int ... prp>
typedef to_boost_vmpl<prp...>::type sparsegridgpu_pack_impl< AggregateT, dataBuffer_type, prp >::vprp

Definition at line 259 of file SparseGridGpu_ker_util.hpp.

Constructor & Destructor Documentation

◆ sparsegridgpu_pack_impl()

template<typename AggregateT , typename dataBuffer_type , int ... prp>
__device__ __host__ sparsegridgpu_pack_impl< AggregateT, dataBuffer_type, prp >::sparsegridgpu_pack_impl ( unsigned int  dataBlockPos,
unsigned int  offset,
dataBuffer_type &  dataBuff,
unsigned int  ppos,
void *(&)  data_ptr[sizeof...(prp)+1],
unsigned int  n_pnt 
)
inline

constructor

Definition at line 282 of file SparseGridGpu_ker_util.hpp.

Member Function Documentation

◆ operator()()

template<typename AggregateT , typename dataBuffer_type , int ... prp>
template<typename T >
__device__ __host__ void sparsegridgpu_pack_impl< AggregateT, dataBuffer_type, prp >::operator() ( T &  t)
inline

It call the copy function for each property.

Definition at line 293 of file SparseGridGpu_ker_util.hpp.

Field Documentation

◆ data_ptr

template<typename AggregateT , typename dataBuffer_type , int ... prp>
void*(& sparsegridgpu_pack_impl< AggregateT, dataBuffer_type, prp >::data_ptr)[sizeof...(prp)+1]

data pointer

Definition at line 274 of file SparseGridGpu_ker_util.hpp.

◆ dataBlockPos

template<typename AggregateT , typename dataBuffer_type , int ... prp>
unsigned int sparsegridgpu_pack_impl< AggregateT, dataBuffer_type, prp >::dataBlockPos

position of the block

Definition at line 262 of file SparseGridGpu_ker_util.hpp.

◆ dataBuff

template<typename AggregateT , typename dataBuffer_type , int ... prp>
dataBuffer_type& sparsegridgpu_pack_impl< AggregateT, dataBuffer_type, prp >::dataBuff

data buffer

Definition at line 268 of file SparseGridGpu_ker_util.hpp.

◆ n_pnt

template<typename AggregateT , typename dataBuffer_type , int ... prp>
unsigned int sparsegridgpu_pack_impl< AggregateT, dataBuffer_type, prp >::n_pnt

Number of points to pack.

Definition at line 277 of file SparseGridGpu_ker_util.hpp.

◆ offset

template<typename AggregateT , typename dataBuffer_type , int ... prp>
unsigned int sparsegridgpu_pack_impl< AggregateT, dataBuffer_type, prp >::offset

offset

Definition at line 265 of file SparseGridGpu_ker_util.hpp.

◆ ppos

template<typename AggregateT , typename dataBuffer_type , int ... prp>
unsigned int sparsegridgpu_pack_impl< AggregateT, dataBuffer_type, prp >::ppos

point

Definition at line 271 of file SparseGridGpu_ker_util.hpp.


The documentation for this struct was generated from the following file: