OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
Macros | Functions
PAssign.h File Reference
#include "Particle/PAssignDefs.h"
#include "PETE/IpplExpressions.h"
#include "AppTypes/AppTypeTraits.h"
#include "Particle/PAssign.hpp"
Include dependency graph for PAssign.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define ASSIGNMENT_OPERATORS_PTCL(FUNC, OP)
 

Functions

template<class T , class RHS , class OP >
void assign (const ParticleAttrib< T > &a, RHS b, OP op)
 
template<class T , unsigned Dim, class RHS , class OP >
void assign (const ParticleAttribElem< T, Dim > &a, RHS b, OP op)
 
template<class T , class OP >
void assign (const ParticleAttrib< T > &a, const T &b, OP op)
 
template<class T , unsigned D, class OP >
void assign (const ParticleAttribElem< T, D > &a, const typename AppTypeTraits< T >::Element_t &b, OP op)
 
template<class T , unsigned D, class RHS >
void assign (const ParticleAttribElem< T, D > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T , unsigned D>
void assign (const ParticleAttribElem< T, D > &lhs, typename AppTypeTraits< T >::Element_t rhs)
 
template<class T , class RHS >
void assign (const ParticleAttrib< T > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T >
void assign (const ParticleAttrib< T > &lhs, T rhs)
 
template<class T , unsigned D, class RHS >
void operator<< (const ParticleAttribElem< T, D > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T , unsigned D>
void operator<< (const ParticleAttribElem< T, D > &lhs, typename AppTypeTraits< T >::Element_t rhs)
 
template<class T , class RHS >
void operator<< (const ParticleAttrib< T > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T >
void operator<< (const ParticleAttrib< T > &lhs, T rhs)
 
template<class T , unsigned D, class RHS >
void operator+= (const ParticleAttribElem< T, D > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T , unsigned D>
void operator+= (const ParticleAttribElem< T, D > &lhs, typename AppTypeTraits< T >::Element_t rhs)
 
template<class T , class RHS >
void operator+= (const ParticleAttrib< T > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T >
void operator+= (const ParticleAttrib< T > &lhs, T rhs)
 
template<class T , unsigned D, class RHS >
void operator-= (const ParticleAttribElem< T, D > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T , unsigned D>
void operator-= (const ParticleAttribElem< T, D > &lhs, typename AppTypeTraits< T >::Element_t rhs)
 
template<class T , class RHS >
void operator-= (const ParticleAttrib< T > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T >
void operator-= (const ParticleAttrib< T > &lhs, T rhs)
 
template<class T , unsigned D, class RHS >
void operator*= (const ParticleAttribElem< T, D > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T , unsigned D>
void operator*= (const ParticleAttribElem< T, D > &lhs, typename AppTypeTraits< T >::Element_t rhs)
 
template<class T , class RHS >
void operator*= (const ParticleAttrib< T > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T >
void operator*= (const ParticleAttrib< T > &lhs, T rhs)
 
template<class T , unsigned D, class RHS >
void operator/= (const ParticleAttribElem< T, D > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T , unsigned D>
void operator/= (const ParticleAttribElem< T, D > &lhs, typename AppTypeTraits< T >::Element_t rhs)
 
template<class T , class RHS >
void operator/= (const ParticleAttrib< T > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T >
void operator/= (const ParticleAttrib< T > &lhs, T rhs)
 
template<class T , unsigned D, class RHS >
void mineq (const ParticleAttribElem< T, D > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T , unsigned D>
void mineq (const ParticleAttribElem< T, D > &lhs, typename AppTypeTraits< T >::Element_t rhs)
 
template<class T , class RHS >
void mineq (const ParticleAttrib< T > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T >
void mineq (const ParticleAttrib< T > &lhs, T rhs)
 
template<class T , unsigned D, class RHS >
void maxeq (const ParticleAttribElem< T, D > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T , unsigned D>
void maxeq (const ParticleAttribElem< T, D > &lhs, typename AppTypeTraits< T >::Element_t rhs)
 
template<class T , class RHS >
void maxeq (const ParticleAttrib< T > &lhs, const PETE_Expr< RHS > &rhs)
 
template<class T >
void maxeq (const ParticleAttrib< T > &lhs, T rhs)
 

Macro Definition Documentation

◆ ASSIGNMENT_OPERATORS_PTCL

#define ASSIGNMENT_OPERATORS_PTCL (   FUNC,
  OP 
)
Value:
\
template<class T, unsigned D, class RHS> \
inline void \
FUNC(const ParticleAttribElem<T,D>& lhs, const PETE_Expr<RHS>& rhs) \
{ \
assign(lhs,rhs.PETE_unwrap().MakeExpression(),OP()); \
} \
\
template<class T, unsigned D> \
inline void \
FUNC(const ParticleAttribElem<T,D>& lhs, \
{ \
assign(lhs,PETE_Scalar<typename AppTypeTraits<T>::Element_t>(rhs),OP()); \
} \
\
template<class T, class RHS> \
inline void \
FUNC(const ParticleAttrib<T>& lhs, const PETE_Expr<RHS>& rhs) \
{ \
assign(lhs,rhs.PETE_unwrap().MakeExpression(),OP()); \
} \
\
template<class T> \
inline void \
FUNC(const ParticleAttrib<T>& lhs, T rhs) \
{ \
assign(lhs,PETE_Scalar<T>(rhs),OP()); \
}
T::Element_t Element_t
Definition: AppTypeTraits.h:19
Definition: PETE.h:77

Definition at line 56 of file PAssign.h.

Function Documentation

◆ assign() [1/8]

template<class T , class OP >
void assign ( const ParticleAttrib< T > &  a,
const T &  b,
OP  op 
)
inline

Definition at line 39 of file PAssign.h.

References a, and assign().

Here is the call graph for this function:

◆ assign() [2/8]

template<class T , class RHS , class OP >
void assign ( const ParticleAttrib< T > &  a,
RHS  b,
OP  op 
)

Definition at line 58 of file PAssign.hpp.

References a, for_each(), INCIPPLSTAT, PETE_apply(), and PETE_Expr< WrappedExpr >::PETE_unwrap().

Referenced by assign().

Here is the call graph for this function:

◆ assign() [3/8]

template<class T , class RHS >
void assign ( const ParticleAttrib< T > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 87 of file PAssign.h.

◆ assign() [4/8]

template<class T >
void assign ( const ParticleAttrib< T > &  lhs,
rhs 
)
inline

Definition at line 87 of file PAssign.h.

◆ assign() [5/8]

template<class T , unsigned D, class OP >
void assign ( const ParticleAttribElem< T, D > &  a,
const typename AppTypeTraits< T >::Element_t &  b,
OP  op 
)
inline

Definition at line 47 of file PAssign.h.

References a, and assign().

Here is the call graph for this function:

◆ assign() [6/8]

template<class T , unsigned D, class RHS >
void assign ( const ParticleAttribElem< T, D > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 87 of file PAssign.h.

◆ assign() [7/8]

template<class T , unsigned D>
void assign ( const ParticleAttribElem< T, D > &  lhs,
typename AppTypeTraits< T >::Element_t  rhs 
)
inline

Definition at line 87 of file PAssign.h.

◆ assign() [8/8]

template<class T , unsigned Dim, class RHS , class OP >
void assign ( const ParticleAttribElem< T, Dim > &  a,
RHS  b,
OP  op 
)

Definition at line 40 of file PAssign.hpp.

References a, for_each(), INCIPPLSTAT, PETE_apply(), and PETE_Expr< WrappedExpr >::PETE_unwrap().

Here is the call graph for this function:

◆ maxeq() [1/4]

template<class T , class RHS >
void maxeq ( const ParticleAttrib< T > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 94 of file PAssign.h.

◆ maxeq() [2/4]

template<class T >
void maxeq ( const ParticleAttrib< T > &  lhs,
rhs 
)
inline

Definition at line 94 of file PAssign.h.

◆ maxeq() [3/4]

template<class T , unsigned D, class RHS >
void maxeq ( const ParticleAttribElem< T, D > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 94 of file PAssign.h.

◆ maxeq() [4/4]

template<class T , unsigned D>
void maxeq ( const ParticleAttribElem< T, D > &  lhs,
typename AppTypeTraits< T >::Element_t  rhs 
)
inline

Definition at line 94 of file PAssign.h.

◆ mineq() [1/4]

template<class T , class RHS >
void mineq ( const ParticleAttrib< T > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 93 of file PAssign.h.

◆ mineq() [2/4]

template<class T >
void mineq ( const ParticleAttrib< T > &  lhs,
rhs 
)
inline

Definition at line 93 of file PAssign.h.

◆ mineq() [3/4]

template<class T , unsigned D, class RHS >
void mineq ( const ParticleAttribElem< T, D > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 93 of file PAssign.h.

◆ mineq() [4/4]

template<class T , unsigned D>
void mineq ( const ParticleAttribElem< T, D > &  lhs,
typename AppTypeTraits< T >::Element_t  rhs 
)
inline

Definition at line 93 of file PAssign.h.

◆ operator*=() [1/4]

template<class T , class RHS >
void operator*= ( const ParticleAttrib< T > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 91 of file PAssign.h.

◆ operator*=() [2/4]

template<class T >
void operator*= ( const ParticleAttrib< T > &  lhs,
rhs 
)
inline

Definition at line 91 of file PAssign.h.

◆ operator*=() [3/4]

template<class T , unsigned D, class RHS >
void operator*= ( const ParticleAttribElem< T, D > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 91 of file PAssign.h.

◆ operator*=() [4/4]

template<class T , unsigned D>
void operator*= ( const ParticleAttribElem< T, D > &  lhs,
typename AppTypeTraits< T >::Element_t  rhs 
)
inline

Definition at line 91 of file PAssign.h.

◆ operator+=() [1/4]

template<class T , class RHS >
void operator+= ( const ParticleAttrib< T > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 89 of file PAssign.h.

◆ operator+=() [2/4]

template<class T >
void operator+= ( const ParticleAttrib< T > &  lhs,
rhs 
)
inline

Definition at line 89 of file PAssign.h.

◆ operator+=() [3/4]

template<class T , unsigned D, class RHS >
void operator+= ( const ParticleAttribElem< T, D > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 89 of file PAssign.h.

◆ operator+=() [4/4]

template<class T , unsigned D>
void operator+= ( const ParticleAttribElem< T, D > &  lhs,
typename AppTypeTraits< T >::Element_t  rhs 
)
inline

Definition at line 89 of file PAssign.h.

◆ operator-=() [1/4]

template<class T , class RHS >
void operator-= ( const ParticleAttrib< T > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 90 of file PAssign.h.

◆ operator-=() [2/4]

template<class T >
void operator-= ( const ParticleAttrib< T > &  lhs,
rhs 
)
inline

Definition at line 90 of file PAssign.h.

◆ operator-=() [3/4]

template<class T , unsigned D, class RHS >
void operator-= ( const ParticleAttribElem< T, D > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 90 of file PAssign.h.

◆ operator-=() [4/4]

template<class T , unsigned D>
void operator-= ( const ParticleAttribElem< T, D > &  lhs,
typename AppTypeTraits< T >::Element_t  rhs 
)
inline

Definition at line 90 of file PAssign.h.

◆ operator/=() [1/4]

template<class T , class RHS >
void operator/= ( const ParticleAttrib< T > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 92 of file PAssign.h.

◆ operator/=() [2/4]

template<class T >
void operator/= ( const ParticleAttrib< T > &  lhs,
rhs 
)
inline

Definition at line 92 of file PAssign.h.

◆ operator/=() [3/4]

template<class T , unsigned D, class RHS >
void operator/= ( const ParticleAttribElem< T, D > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 92 of file PAssign.h.

◆ operator/=() [4/4]

template<class T , unsigned D>
void operator/= ( const ParticleAttribElem< T, D > &  lhs,
typename AppTypeTraits< T >::Element_t  rhs 
)
inline

Definition at line 92 of file PAssign.h.

◆ operator<<() [1/4]

template<class T , class RHS >
void operator<< ( const ParticleAttrib< T > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 88 of file PAssign.h.

◆ operator<<() [2/4]

template<class T >
void operator<< ( const ParticleAttrib< T > &  lhs,
rhs 
)
inline

Definition at line 88 of file PAssign.h.

◆ operator<<() [3/4]

template<class T , unsigned D, class RHS >
void operator<< ( const ParticleAttribElem< T, D > &  lhs,
const PETE_Expr< RHS > &  rhs 
)
inline

Definition at line 88 of file PAssign.h.

◆ operator<<() [4/4]

template<class T , unsigned D>
void operator<< ( const ParticleAttribElem< T, D > &  lhs,
typename AppTypeTraits< T >::Element_t  rhs 
)
inline

Definition at line 88 of file PAssign.h.