OpenFPM_pdata  4.1.0
Project that contain the implementation of distributed structures
openfpm::vector_gpu_ker_ref< T, layout_base > Struct Template Reference

grid interface available when on gpu More...

Detailed Description

template<typename T, template< typename > class layout_base>
struct openfpm::vector_gpu_ker_ref< T, layout_base >

grid interface available when on gpu

Template Parameters
n_bufnumber of template buffers

Definition at line 112 of file map_vector_cuda_ker.cuh.

Public Types

typedef vector_gpu_ker< T, layout_base > self_type
 
typedef apply_transform< layout_base, T >::type T_
 
typedef int yes_i_am_vector
 
typedef layout_base< T_ >::type layout_type
 
typedef grid_base< 1, T_, CudaMemory, typename layout_base< T_ >::type >::container container
 
typedef T_ value_type
 
typedef int yes_has_check_device_pointer
 

Public Member Functions

__device__ __host__ unsigned int size () const
 
__device__ __host__ unsigned int capacity () const
 
template<unsigned int p>
__device__ __host__ auto get (unsigned int id) const -> decltype(vref.template get< p >(id))
 
__device__ __host__ auto get (unsigned int id) -> decltype(vref.get(id))
 
__device__ __host__ auto get (unsigned int id) const -> decltype(vref.get(id))
 
__device__ __host__ auto get_o (unsigned int id) const -> decltype(vref.get_o(id))
 
__device__ __host__ auto get_o (unsigned int id) -> decltype(vref.get_o(id))
 
auto last () const -> decltype(vref.last())
 
template<unsigned int p>
__device__ __host__ auto get (unsigned int id) -> decltype(vref.template get< p >(id))
 
auto last () -> decltype(vref.last())
 
 vector_gpu_ker_ref (vector_gpu_ker< T, layout_base > &vref)
 
__device__ void set (int id, const container &obj)
 
template<unsigned int p>
__device__ __host__ void * getPointer ()
 
template<unsigned int p>
__device__ __host__ const void * getPointer () const
 
template<typename encap_S , unsigned int ... args>
void set_o (unsigned int i, const encap_S &obj)
 
__device__ void set (unsigned int id, const vector_gpu_ker< T_, layout_base > &v, unsigned int src)
 
template<unsigned int ... prp>
__device__ void set (unsigned int id, const vector_gpu_ker< T_, layout_base > &v, unsigned int src)
 
__host__ ite_gpu< 1 > getGPUIterator (size_t n_thr=default_kernel_wg_threads_) const
 
ite_gpu< 1 > getGPUIteratorTo (size_t stop, size_t n_thr=default_kernel_wg_threads_) const
 Get an iterator for the GPU. More...
 
__host__ vector_gpu_ker_ref< T, layout_base > & operator= (const vector_gpu_ker< T, layout_base > &v)
 
__device__ grid_gpu_ker< 1, T_, layout_base, grid_sm< 1, void > > & getBase ()
 
pointer_check check_device_pointer (void *ptr)
 
void * internal_get_size_pointer ()
 
void print_size ()
 

Data Fields

vector_gpu_ker< T, layout_base > & vref
 vector reference
 

Member Function Documentation

◆ getGPUIteratorTo()

template<typename T , template< typename > class layout_base>
ite_gpu<1> openfpm::vector_gpu_ker_ref< T, layout_base >::getGPUIteratorTo ( size_t  stop,
size_t  n_thr = default_kernel_wg_threads_ 
) const
inline

Get an iterator for the GPU.

Definition at line 690 of file map_vector_cuda_ker.cuh.


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