OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
SubFieldAssign.h File Reference
Include dependency graph for SubFieldAssign.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define SUB_ASSIGNMENT_OPERATORS(FUNC, OP)

Functions

template<class T1, unsigned Dim, class S, class RHS, class OP>
void assign (SubBareField< T1, Dim, S > a, RHS b, OP op, ExprTag< true >)
template<class T, unsigned D, class S, class OP>
void assign (SubBareField< T, D, S > a, const T &b, OP op, ExprTag< true >)
template<class T, unsigned D, class S>
void assign (const SubBareField< T, D, S > &lhs, const T &rhs)
template<class T, unsigned D, class S>
void operator<< (const SubBareField< T, D, S > &lhs, const T &rhs)
template<class T, unsigned D, class S>
void operator+= (const SubBareField< T, D, S > &lhs, const T &rhs)
template<class T, unsigned D, class S>
void operator-= (const SubBareField< T, D, S > &lhs, const T &rhs)
template<class T, unsigned D, class S>
void operator*= (const SubBareField< T, D, S > &lhs, const T &rhs)
template<class T, unsigned D, class S>
void operator/= (const SubBareField< T, D, S > &lhs, const T &rhs)
template<class T, unsigned D, class S>
void mineq (const SubBareField< T, D, S > &lhs, const T &rhs)
template<class T, unsigned D, class S>
void maxeq (const SubBareField< T, D, S > &lhs, const T &rhs)

Macro Definition Documentation

◆ SUB_ASSIGNMENT_OPERATORS

#define SUB_ASSIGNMENT_OPERATORS ( FUNC,
OP )
Value:
\
template<class T, unsigned D, class S> \
inline void \
FUNC(const SubBareField<T,D,S>& lhs, const T& rhs) \
{ \
assign(lhs,PETE_Scalar<T>(rhs), OP(),ExprTag<true>()); \
}

Definition at line 49 of file SubFieldAssign.h.

Referenced by maxeq(), mineq(), operator*=(), operator+=(), operator-=(), operator/=(), and operator<<().

Function Documentation

◆ assign() [1/3]

template<class T, unsigned D, class S>
void assign ( const SubBareField< T, D, S > & lhs,
const T & rhs )
inline

Definition at line 59 of file SubFieldAssign.h.

References assign().

Here is the call graph for this function:

◆ assign() [2/3]

template<class T, unsigned D, class S, class OP>
void assign ( SubBareField< T, D, S > a,
const T & b,
OP op,
ExprTag< true >  )
inline

Definition at line 42 of file SubFieldAssign.h.

References a, and assign().

Here is the call graph for this function:

◆ assign() [3/3]

template<class T1, unsigned Dim, class S, class RHS, class OP>
void assign ( SubBareField< T1, Dim, S > a,
RHS b,
OP op,
ExprTag< true >  )

Definition at line 44 of file SubFieldAssign.hpp.

References a, IpplInfo::abort(), LField< T, Dim >::begin(), endl(), ERRORMSG, IpplInfo::extraCompressChecks, FillGCIfNecessary(), for_each(), LField< T, Dim >::getOwned(), INCIPPLSTAT, PETE_apply(), PInsist, LField< T, Dim >::TryCompress(), TryCompressLHS(), and LField< T, Dim >::Uncompress().

Referenced by assign().

Here is the call graph for this function:

◆ maxeq()

template<class T, unsigned D, class S>
void maxeq ( const SubBareField< T, D, S > & lhs,
const T & rhs )
inline

Definition at line 66 of file SubFieldAssign.h.

References maxeq(), and SUB_ASSIGNMENT_OPERATORS.

Here is the call graph for this function:

◆ mineq()

template<class T, unsigned D, class S>
void mineq ( const SubBareField< T, D, S > & lhs,
const T & rhs )
inline

Definition at line 65 of file SubFieldAssign.h.

References mineq(), and SUB_ASSIGNMENT_OPERATORS.

Here is the call graph for this function:

◆ operator*=()

template<class T, unsigned D, class S>
void operator*= ( const SubBareField< T, D, S > & lhs,
const T & rhs )
inline

Definition at line 63 of file SubFieldAssign.h.

References SUB_ASSIGNMENT_OPERATORS.

◆ operator+=()

template<class T, unsigned D, class S>
void operator+= ( const SubBareField< T, D, S > & lhs,
const T & rhs )
inline

Definition at line 61 of file SubFieldAssign.h.

References SUB_ASSIGNMENT_OPERATORS.

◆ operator-=()

template<class T, unsigned D, class S>
void operator-= ( const SubBareField< T, D, S > & lhs,
const T & rhs )
inline

Definition at line 62 of file SubFieldAssign.h.

References SUB_ASSIGNMENT_OPERATORS.

◆ operator/=()

template<class T, unsigned D, class S>
void operator/= ( const SubBareField< T, D, S > & lhs,
const T & rhs )
inline

Definition at line 64 of file SubFieldAssign.h.

References SUB_ASSIGNMENT_OPERATORS.

◆ operator<<()

template<class T, unsigned D, class S>
void operator<< ( const SubBareField< T, D, S > & lhs,
const T & rhs )
inline

Definition at line 60 of file SubFieldAssign.h.

References SUB_ASSIGNMENT_OPERATORS.