OpenFPM_pdata  4.1.0
Project that contain the implementation of distributed structures
 
Loading...
Searching...
No Matches
vector_dist_expression_op< exp1, void, VECT_NORM_INF > Class Template Reference

expression that encapsulate a vector Norm INF expression More...

Detailed Description

template<typename exp1>
class vector_dist_expression_op< exp1, void, VECT_NORM_INF >

expression that encapsulate a vector Norm INF expression

Template Parameters
exp1expression 1
vector_typetype of vector on which the expression is acting

Definition at line 535 of file vector_dist_operators_functions.hpp.

#include <vector_dist_operators_functions.hpp>

Public Types

typedef exp1::is_ker is_ker
 Indicate if it is an in kernel expression.
 
typedef vector_result< typenameexp1::vtype, void >::type vtype
 return the vector type on which this expression operate
 
typedef vector_is_sort_result< exp1::is_sort::value, false >::type is_sort
 result for is sort
 
typedef nn_type_result< typenameexp1::NN_type, void >::type NN_type
 NN_type.
 

Public Member Functions

 vector_dist_expression_op (const exp1 &o1)
 constructor from an epxression exp1 and a vector vd
 
void init () const
 sum reduction require initialization where we calculate the reduction
 
NN_typegetNN () const
 get the NN object
 
std::remove_reference< rtype >::type get ()
 it return the result of the expression
 
template<typename r_type = typename std::remove_reference<rtype>::type>
r_type value (const vect_dist_key_dx &key) const
 it return the result of the expression (precalculated before)
 
template<typename r_type = typename std::remove_reference<rtype>::type>
r_type getReduction () const
 it return the result of the expression for ODEINT
 
vtypegetVector ()
 Return the vector on which is acting.
 
const vtypegetVector () const
 Return the vector on which is acting.
 

Private Types

typedef apply_kernel_rtype< decltype(o1.value(vect_dist_key_dx()))>::rtype rtype
 return type of this expression
 

Private Attributes

const exp1 o1
 expression on which apply the reduction
 
std::remove_reference< rtype >::type val
 return type of the calculated value (without reference)
 

Member Typedef Documentation

◆ is_ker

template<typename exp1 >
typedef exp1::is_ker vector_dist_expression_op< exp1, void, VECT_NORM_INF >::is_ker

Indicate if it is an in kernel expression.

Definition at line 550 of file vector_dist_operators_functions.hpp.

◆ is_sort

template<typename exp1 >
typedef vector_is_sort_result<exp1::is_sort::value,false>::type vector_dist_expression_op< exp1, void, VECT_NORM_INF >::is_sort

result for is sort

Definition at line 556 of file vector_dist_operators_functions.hpp.

◆ NN_type

template<typename exp1 >
typedef nn_type_result<typenameexp1::NN_type,void>::type vector_dist_expression_op< exp1, void, VECT_NORM_INF >::NN_type

NN_type.

Definition at line 559 of file vector_dist_operators_functions.hpp.

◆ rtype

template<typename exp1 >
typedef apply_kernel_rtype<decltype(o1.value(vect_dist_key_dx()))>::rtype vector_dist_expression_op< exp1, void, VECT_NORM_INF >::rtype
private

return type of this expression

Definition at line 542 of file vector_dist_operators_functions.hpp.

◆ vtype

template<typename exp1 >
typedef vector_result<typenameexp1::vtype,void>::type vector_dist_expression_op< exp1, void, VECT_NORM_INF >::vtype

return the vector type on which this expression operate

Definition at line 553 of file vector_dist_operators_functions.hpp.

Constructor & Destructor Documentation

◆ vector_dist_expression_op()

template<typename exp1 >
vector_dist_expression_op< exp1, void, VECT_NORM_INF >::vector_dist_expression_op ( const exp1 &  o1)
inline

constructor from an epxression exp1 and a vector vd

Definition at line 562 of file vector_dist_operators_functions.hpp.

Member Function Documentation

◆ get()

template<typename exp1 >
std::remove_reference< rtype >::type vector_dist_expression_op< exp1, void, VECT_NORM_INF >::get ( )
inline

it return the result of the expression

Definition at line 628 of file vector_dist_operators_functions.hpp.

◆ getNN()

template<typename exp1 >
NN_type * vector_dist_expression_op< exp1, void, VECT_NORM_INF >::getNN ( ) const
inline

get the NN object

Returns
the NN object

Definition at line 622 of file vector_dist_operators_functions.hpp.

◆ getReduction()

template<typename exp1 >
template<typename r_type = typename std::remove_reference<rtype>::type>
r_type vector_dist_expression_op< exp1, void, VECT_NORM_INF >::getReduction ( ) const
inline

it return the result of the expression for ODEINT

Definition at line 641 of file vector_dist_operators_functions.hpp.

◆ getVector() [1/2]

template<typename exp1 >
vtype & vector_dist_expression_op< exp1, void, VECT_NORM_INF >::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 653 of file vector_dist_operators_functions.hpp.

◆ getVector() [2/2]

template<typename exp1 >
const vtype & vector_dist_expression_op< exp1, void, VECT_NORM_INF >::getVector ( ) const
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 665 of file vector_dist_operators_functions.hpp.

◆ init()

template<typename exp1 >
void vector_dist_expression_op< exp1, void, VECT_NORM_INF >::init ( ) const
inline

sum reduction require initialization where we calculate the reduction

Definition at line 568 of file vector_dist_operators_functions.hpp.

◆ value()

template<typename exp1 >
template<typename r_type = typename std::remove_reference<rtype>::type>
r_type vector_dist_expression_op< exp1, void, VECT_NORM_INF >::value ( const vect_dist_key_dx key) const
inline

it return the result of the expression (precalculated before)

Definition at line 635 of file vector_dist_operators_functions.hpp.

Field Documentation

◆ o1

template<typename exp1 >
const exp1 vector_dist_expression_op< exp1, void, VECT_NORM_INF >::o1
private

expression on which apply the reduction

Definition at line 539 of file vector_dist_operators_functions.hpp.

◆ val

template<typename exp1 >
std::remove_reference<rtype>::type vector_dist_expression_op< exp1, void, VECT_NORM_INF >::val
mutableprivate

return type of the calculated value (without reference)

Definition at line 545 of file vector_dist_operators_functions.hpp.


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