OpenFPM_pdata  4.1.0
Project that contain the implementation of distributed structures
 
Loading...
Searching...
No Matches
vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > > Class Template Reference

Sub class that encapsulate a GPU vector properties operand to be used for expressions construction Temporal Expressions. More...

Detailed Description

template<typename T>
class vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > >

Sub class that encapsulate a GPU vector properties operand to be used for expressions construction Temporal Expressions.

Template Parameters
prpproperty involved
vectorinvolved

Definition at line 1516 of file vector_dist_operators.hpp.

#include <vector_dist_operators.hpp>

+ Inheritance diagram for vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > >:

Public Member Functions

template<unsigned int prp2, typename vector2 >
 vector_dist_expression (const vector_dist_expression< prp2, vector2 > &v_exp)
 
template<typename exp1 , typename exp2 , unsigned int op>
 vector_dist_expression (const vector_dist_expression_op< exp1, exp2, op > &v_exp)
 
template<unsigned int prp2, typename vector2 >
vectoroperator= (const vector_dist_expression< prp2, vector2 > &v_exp)
 
vectoroperator= (const vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > > &v_exp)
 
vectorequalGPU (const vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > > &v_exp)
 
template<typename exp1 , typename exp2 , unsigned int op>
vectoroperator= (const vector_dist_expression_op< exp1, exp2, op > &v_exp)
 
- Public Member Functions inherited from vector_dist_expression_impl< openfpm::vector_gpu< aggregate< T > > >
void setVarId (int var_id)
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
size_t size () const
 
void resize (size_t n)
 
 vector_dist_expression_impl (const vector_dist_expression< prp2, vector2 > &v_exp)
 
 vector_dist_expression_impl (const vector_dist_expression_op< exp1, exp2, op > &v_exp)
 
void * getNN () const
 get the NN object
 
__device__ __host__ const vectorgetVector () const
 Return the vector on which is acting.
 
__device__ __host__ vectorgetVector ()
 Return the vector on which is acting.
 
void init () const
 This function must be called before value.
 
__host__ __device__ auto value (const vect_dist_key_dx &k) const -> decltype(v.template get< 0 >(k.getKey()))
 Evaluate the expression.
 
vectoroperator= (const vector_dist_expression< prp2, vector2 > &v_exp)
 Fill the vector property with the evaluated expression.
 
vectoroperator= (const vector_dist_expression_op< exp1, exp2, op > &v_exp)
 Fill the vector property with the evaluated expression.
 
vectoroperator= (double d)
 Fill the vector property with the double.
 
void value_nz (pmap_type &p_map, const vect_dist_key_dx &key, unordered_map_type &cols, coeff_type &coeff, unsigned int comp) const
 
vector_dist_expression_op< vector_dist_expression< 0, vector >, boost::mpl::int_< 1 >, VECT_COMP > operator[] (int comp)
 

Private Types

typedef openfpm::vector_gpu< aggregate< T > > vector
 
typedef vector_dist_expression_impl< vectorbase
 

Additional Inherited Members

- Public Types inherited from vector_dist_expression_impl< openfpm::vector_gpu< aggregate< T > > >
typedef T * iterator
 
typedef const T * const_iterator
 
typedef has_vector_kernel< vector >::type is_ker
 
typedef vector vtype
 The type of the internal vector.
 
typedef T value_type
 The type of the internal value.
 
typedef boost::mpl::bool_< false > is_sort
 result for is sort
 
typedef void NN_type
 NN_type.
 
- Data Fields inherited from vector_dist_expression_impl< openfpm::vector_gpu< aggregate< T > > >
int var_id
 
- Static Public Attributes inherited from vector_dist_expression_impl< openfpm::vector_gpu< aggregate< T > > >
static const unsigned int prop
 Property id of the point.
 

Member Typedef Documentation

◆ base

template<typename T >
typedef vector_dist_expression_impl<vector> vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > >::base
private

Definition at line 1519 of file vector_dist_operators.hpp.

◆ vector

template<typename T >
typedef openfpm::vector_gpu<aggregate<T> > vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > >::vector
private

Definition at line 1518 of file vector_dist_operators.hpp.

Constructor & Destructor Documentation

◆ vector_dist_expression() [1/3]

template<typename T >
vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > >::vector_dist_expression ( )
inline

Definition at line 1521 of file vector_dist_operators.hpp.

◆ vector_dist_expression() [2/3]

template<typename T >
template<unsigned int prp2, typename vector2 >
vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > >::vector_dist_expression ( const vector_dist_expression< prp2, vector2 > &  v_exp)
inline

Definition at line 1526 of file vector_dist_operators.hpp.

◆ vector_dist_expression() [3/3]

template<typename T >
template<typename exp1 , typename exp2 , unsigned int op>
vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > >::vector_dist_expression ( const vector_dist_expression_op< exp1, exp2, op > &  v_exp)
inline

Definition at line 1532 of file vector_dist_operators.hpp.

Member Function Documentation

◆ equalGPU()

template<typename T >
vector & vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > >::equalGPU ( const vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > > &  v_exp)
inline

Definition at line 1547 of file vector_dist_operators.hpp.

◆ operator=() [1/3]

template<typename T >
vector & vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > >::operator= ( const vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > > &  v_exp)
inline

Definition at line 1542 of file vector_dist_operators.hpp.

◆ operator=() [2/3]

template<typename T >
template<unsigned int prp2, typename vector2 >
vector & vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > >::operator= ( const vector_dist_expression< prp2, vector2 > &  v_exp)
inline

Definition at line 1537 of file vector_dist_operators.hpp.

◆ operator=() [3/3]

template<typename T >
template<typename exp1 , typename exp2 , unsigned int op>
vector & vector_dist_expression< 0, openfpm::vector_gpu< aggregate< T > > >::operator= ( const vector_dist_expression_op< exp1, exp2, op > &  v_exp)
inline

Definition at line 1553 of file vector_dist_operators.hpp.


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