8 #ifndef OPENFPM_NUMERICS_SRC_OPERATORS_VECTOR_VECTOR_DIST_OPERATOR_ASSIGN_HPP_ 
    9 #define OPENFPM_NUMERICS_SRC_OPERATORS_VECTOR_VECTOR_DIST_OPERATOR_ASSIGN_HPP_ 
   45 template<
typename prp1, 
typename expr1, 
typename prp2, 
typename expr2> 
void assign(prp1 & p1, 
const expr1 & v_e1, prp2 & p2, 
const expr2 & v_e2)
 
   53     auto it = p1.getVector().getDomainIterator();
 
   66 template<
typename prp1, 
typename expr1, 
typename prp2, 
typename expr2, 
typename prp3, 
typename expr3> 
void assign(prp1 & p1, 
const expr1 & v_e1, prp2 & p2, 
const expr2 & v_e2, prp3 & p3, 
const expr3 & v_e3)
 
   76     auto it = p1.getVector().getDomainIterator();
 
   90 template<
typename prp1, 
typename expr1,
 
   91          typename prp2, 
typename expr2,
 
   92          typename prp3, 
typename expr3,
 
   93          typename prp4, 
typename expr4>
 
   94 void assign(prp1 & p1, 
const expr1 & v_e1,
 
   95             prp2 & p2, 
const expr2 & v_e2,
 
   96             prp3 & p3, 
const expr3 & v_e3,
 
   97             prp4 & p4, 
const expr4 & v_e4)
 
  109     auto it = p1.getVector().getDomainIterator();
 
  125 template<
typename prp1, 
typename expr1,
 
  126          typename prp2, 
typename expr2,
 
  127          typename prp3, 
typename expr3,
 
  128          typename prp4, 
typename expr4,
 
  129          typename prp5, 
typename expr5>
 
  130 void assign(prp1 & p1, 
const expr1 & v_e1,
 
  131             prp2 & p2, 
const expr2 & v_e2,
 
  132             prp3 & p3, 
const expr3 & v_e3,
 
  133             prp4 & p4, 
const expr4 & v_e4,
 
  134             prp5 & p5, 
const expr5 & v_e5)
 
  148     auto it = p1.getVector().getDomainIterator();
 
  164 template<
typename prp1, 
typename expr1,
 
  165          typename prp2, 
typename expr2,
 
  166          typename prp3, 
typename expr3,
 
  167          typename prp4, 
typename expr4,
 
  168          typename prp5, 
typename expr5,
 
  169          typename prp6, 
typename expr6>
 
  170 void assign(prp1 & p1, 
const expr1 & v_e1,
 
  171             prp2 & p2, 
const expr2 & v_e2,
 
  172             prp3 & p3, 
const expr3 & v_e3,
 
  173             prp4 & p4, 
const expr4 & v_e4,
 
  174             prp5 & p5, 
const expr5 & v_e5,
 
  175             prp6 & p6, 
const expr6 & v_e6)
 
  191     auto it = p1.getVector().getDomainIterator();
 
  210 template<
typename prp1, 
typename expr1,
 
  211          typename prp2, 
typename expr2,
 
  212          typename prp3, 
typename expr3,
 
  213          typename prp4, 
typename expr4,
 
  214          typename prp5, 
typename expr5,
 
  215          typename prp6, 
typename expr6,
 
  216          typename prp7, 
typename expr7>
 
  217 void assign(prp1 & p1, 
const expr1 & v_e1,
 
  218             prp2 & p2, 
const expr2 & v_e2,
 
  219             prp3 & p3, 
const expr3 & v_e3,
 
  220             prp4 & p4, 
const expr4 & v_e4,
 
  221             prp5 & p5, 
const expr5 & v_e5,
 
  222             prp6 & p6, 
const expr6 & v_e6,
 
  223             prp7 & p7, 
const expr7 & v_e7)
 
  241     auto it = p1.getVector().getDomainIterator();
 
  260 template<
typename prp1, 
typename expr1,
 
  261          typename prp2, 
typename expr2,
 
  262          typename prp3, 
typename expr3,
 
  263          typename prp4, 
typename expr4,
 
  264          typename prp5, 
typename expr5,
 
  265          typename prp6, 
typename expr6,
 
  266          typename prp7, 
typename expr7,
 
  267          typename prp8, 
typename expr8>
 
  268 void assign(prp1 & p1, 
const expr1 & v_e1,
 
  269             prp2 & p2, 
const expr2 & v_e2,
 
  270             prp3 & p3, 
const expr3 & v_e3,
 
  271             prp4 & p4, 
const expr4 & v_e4,
 
  272             prp5 & p5, 
const expr5 & v_e5,
 
  273             prp6 & p6, 
const expr6 & v_e6,
 
  274             prp7 & p7, 
const expr7 & v_e7,
 
  275             prp8 & p8, 
const expr8 & v_e8)
 
  295     auto it = p1.getVector().getDomainIterator();
 
static auto value(vector &v, const vect_dist_key_dx &k) -> decltype(v.template getProp< prp >(k))
return the value (position or property) of the particle k in the vector v 
 
Main class that encapsulate a vector properties operand to be used for expressions construction...
 
static vector_dist_expression< 0, double > construct(double e)
It return an expression from a double. 
 
This class is a trick to indicate the compiler a specific specialization pattern. ...
 
static const T & construct(const T &e)
It return the expression itself. 
 
static vector_dist_expression< 0, float > construct(const float e)
It return an expression from a float.