OpenFPM_pdata  4.1.0
Project that contain the implementation of distributed structures
 
Loading...
Searching...
No Matches
vector_dist_ker_list< vector_dist_ker_type > Class Template Reference

This class contain a list of all tracked vector_dist_ker around. More...

Detailed Description

template<typename vector_dist_ker_type>
class vector_dist_ker_list< vector_dist_ker_type >

This class contain a list of all tracked vector_dist_ker around.

In short suppose to do a auto vdk = vd.toKernel() vdk wrap the cuda pointer of vd. On the other hand if in vd we use instruction that produce reallocations vdk contain invalid pointers. this class contail a list of all vector_dist_kernel, such that if a reallocation happen the pointer are updated on the vector_dist_kernel

Definition at line 36 of file vector_dist_operators_list_ker.hpp.

#include <vector_dist_operators_list_ker.hpp>

Public Member Functions

void add (vector_dist_ker_type &v, bool is_sorted)
 Add a new vector_dist_kernel to track.
 
void update (const vector_dist_ker_type &v)
 Update the addresses of all vector_dist_kernels around.
 
void update_sort (const vector_dist_ker_type &vs)
 
void remove (vector_dist_ker_type &v)
 Remove one vector_dist_kernels entry.
 
size_t n_entry ()
 Return the number of entries.
 
bool check (const vector_dist_ker_type &v)
 Check that all the entries are aligned to the latest vector_dist_ker_type.
 

Private Attributes

openfpm::vector< ref_wrap< vector_dist_ker_type > > vkers
 

Member Function Documentation

◆ add()

template<typename vector_dist_ker_type >
void vector_dist_ker_list< vector_dist_ker_type >::add ( vector_dist_ker_type &  v,
bool  is_sorted 
)
inline

Add a new vector_dist_kernel to track.

Parameters
vvector_dist_kernel to track

Definition at line 48 of file vector_dist_operators_list_ker.hpp.

◆ check()

template<typename vector_dist_ker_type >
bool vector_dist_ker_list< vector_dist_ker_type >::check ( const vector_dist_ker_type &  v)
inline

Check that all the entries are aligned to the latest vector_dist_ker_type.

Returns
true if all entries are alligned

Definition at line 117 of file vector_dist_operators_list_ker.hpp.

◆ n_entry()

template<typename vector_dist_ker_type >
size_t vector_dist_ker_list< vector_dist_ker_type >::n_entry ( )
inline

Return the number of entries.

Returns
the number of entries

Definition at line 107 of file vector_dist_operators_list_ker.hpp.

◆ remove()

template<typename vector_dist_ker_type >
void vector_dist_ker_list< vector_dist_ker_type >::remove ( vector_dist_ker_type &  v)
inline

Remove one vector_dist_kernels entry.

Parameters
vvector_dist_kernel to remove

Definition at line 90 of file vector_dist_operators_list_ker.hpp.

◆ update()

template<typename vector_dist_ker_type >
void vector_dist_ker_list< vector_dist_ker_type >::update ( const vector_dist_ker_type &  v)
inline

Update the addresses of all vector_dist_kernels around.

Parameters
vvector_dist_kernel to track

Definition at line 66 of file vector_dist_operators_list_ker.hpp.

◆ update_sort()

template<typename vector_dist_ker_type >
void vector_dist_ker_list< vector_dist_ker_type >::update_sort ( const vector_dist_ker_type &  vs)
inline

Definition at line 75 of file vector_dist_operators_list_ker.hpp.

Field Documentation

◆ vkers

template<typename vector_dist_ker_type >
openfpm::vector<ref_wrap<vector_dist_ker_type> > vector_dist_ker_list< vector_dist_ker_type >::vkers
private

Definition at line 38 of file vector_dist_operators_list_ker.hpp.


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