OpenFPM_pdata  1.1.0
Project that contain the implementation of distributed structures
 All Data Structures Namespaces Functions Variables Typedefs Enumerations Friends Pages
vector_dist_expression< prp, vector > Class Template Reference

Main class that encapsulate a vector properties operand to be used for expressions construction. More...

Detailed Description

template<unsigned int prp, typename vector>
class vector_dist_expression< prp, vector >

Main class that encapsulate a vector properties operand to be used for expressions construction.

Template Parameters
prpproperty involved
vectorinvolved

Definition at line 433 of file vector_dist_operators.hpp.

#include <vector_dist_operators.hpp>

Public Types

typedef vector vtype
 The type of the internal vector.
 

Public Member Functions

 vector_dist_expression (vector &v)
 constructor for an external vector
 
vector & getVector ()
 Return the vector on which is acting. More...
 
void init () const
 This function must be called before value. More...
 
auto value (const vect_dist_key_dx &k) const -> decltype(pos_or_propR< vector, prp >::value(v, k))
 Evaluate the expression. More...
 
template<unsigned int prp2>
vector & operator= (const vector_dist_expression< prp2, vector > &v_exp)
 Fill the vector property with the evaluated expression. More...
 
template<typename exp1 , typename exp2 , unsigned int op>
vector & operator= (const vector_dist_expression_op< exp1, exp2, op > &v_exp)
 Fill the vector property with the evaluated expression. More...
 
vector & operator= (double d)
 Fill the vector property with the double. More...
 

Static Public Attributes

static const unsigned int prop = prp
 Property id of the point.
 

Private Attributes

vector & v
 The vector.
 

Member Function Documentation

template<unsigned int prp, typename vector>
vector& vector_dist_expression< prp, vector >::getVector ( )
inline

Return the vector on which is acting.

It return the vector used in getVExpr, to get this object

Returns
the vector

Definition at line 458 of file vector_dist_operators.hpp.

template<unsigned int prp, typename vector>
void vector_dist_expression< prp, vector >::init ( ) const
inline

This function must be called before value.

it initialize the expression if needed

Definition at line 468 of file vector_dist_operators.hpp.

template<unsigned int prp, typename vector>
template<unsigned int prp2>
vector& vector_dist_expression< prp, vector >::operator= ( const vector_dist_expression< prp2, vector > &  v_exp)
inline

Fill the vector property with the evaluated expression.

Parameters
v_expexpression to evaluate
Returns
itself

Definition at line 490 of file vector_dist_operators.hpp.

template<unsigned int prp, typename vector>
template<typename exp1 , typename exp2 , unsigned int op>
vector& vector_dist_expression< prp, vector >::operator= ( const vector_dist_expression_op< exp1, exp2, op > &  v_exp)
inline

Fill the vector property with the evaluated expression.

Parameters
v_expexpression to evaluate
Returns
itself

Definition at line 515 of file vector_dist_operators.hpp.

template<unsigned int prp, typename vector>
vector& vector_dist_expression< prp, vector >::operator= ( double  d)
inline

Fill the vector property with the double.

Parameters
dvalue to fill
Returns
the internal vector

Definition at line 540 of file vector_dist_operators.hpp.

template<unsigned int prp, typename vector>
auto vector_dist_expression< prp, vector >::value ( const vect_dist_key_dx k) const -> decltype(pos_or_propR<vector,prp>::value(v,k))
inline

Evaluate the expression.

Parameters
kwhere to evaluate the expression
Returns
the result of the expression

Definition at line 478 of file vector_dist_operators.hpp.


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