OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
Macros
TSVMeta.h File Reference
#include "AppTypes/TSVMetaAssign.h"
#include "AppTypes/TSVMetaUnary.h"
#include "AppTypes/TSVMetaBinary.h"
#include "AppTypes/TSVMetaDot.h"
#include "AppTypes/TSVMetaCross.h"
#include "AppTypes/TSVMetaDotDot.h"
#include "AppTypes/TSVMetaCompare.h"
Include dependency graph for TSVMeta.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define TSV_ELEMENTWISE_OPERATOR_WITH_SCALAR(TSV, SCA, OP, APP)
 
#define TSV_ELEMENTWISE_OPERATOR(TSV, OP, APP)
 
#define TSV_ELEMENTWISE_OPERATOR2(TSV1, TSV2, OP, APP)
 

Macro Definition Documentation

◆ TSV_ELEMENTWISE_OPERATOR

#define TSV_ELEMENTWISE_OPERATOR (   TSV,
  OP,
  APP 
)
Value:
\
template < class T1, class T2, unsigned D > \
OP(const TSV<T1,D> &lhs, const TSV<T2,D> &rhs) \
{ \
return TSV_MetaBinary< TSV<T1,D> , TSV<T2,D> , APP > :: apply(lhs,rhs);\
} \
TSV_ELEMENTWISE_OPERATOR_WITH_SCALAR(TSV,int,OP,APP) \
TSV_ELEMENTWISE_OPERATOR_WITH_SCALAR(TSV,unsigned int,OP,APP) \
TSV_ELEMENTWISE_OPERATOR_WITH_SCALAR(TSV,long,OP,APP) \
TSV_ELEMENTWISE_OPERATOR_WITH_SCALAR(TSV,float,OP,APP) \
TSV_ELEMENTWISE_OPERATOR_WITH_SCALAR(TSV,double,OP,APP) \
TSV_ELEMENTWISE_OPERATOR_WITH_SCALAR(TSV,std::complex<double>,OP,APP)
#define TSV_ELEMENTWISE_OPERATOR_WITH_SCALAR(TSV, SCA, OP, APP)
Definition: TSVMeta.h:42
boost::function< boost::tuple< double, bool >(arguments_t)> type
Definition: function.hpp:21

Definition at line 58 of file TSVMeta.h.

◆ TSV_ELEMENTWISE_OPERATOR2

#define TSV_ELEMENTWISE_OPERATOR2 (   TSV1,
  TSV2,
  OP,
  APP 
)
Value:
\
template < class T1, class T2, unsigned D > \
inline typename PETEBinaryReturn<TSV1<T1,D>,TSV2<T2,D>,APP>::type \
OP(const TSV1<T1,D> &lhs, const TSV2<T2,D> &rhs) \
{ \
return TSV_MetaBinary< TSV1<T1,D>, TSV2<T2,D>, APP >:: \
apply(lhs,rhs); \
}

Definition at line 75 of file TSVMeta.h.

◆ TSV_ELEMENTWISE_OPERATOR_WITH_SCALAR

#define TSV_ELEMENTWISE_OPERATOR_WITH_SCALAR (   TSV,
  SCA,
  OP,
  APP 
)
Value:
\
template < class T1 , unsigned D > \
OP(const TSV<T1,D>& lhs, SCA sca) \
{ \
return TSV_MetaBinaryScalar< TSV<T1,D> , SCA , APP > :: apply(lhs,sca);\
} \
\
template < class T1 , unsigned D > \
OP(SCA sca, const TSV<T1,D>& rhs) \
{ \
return TSV_MetaBinaryScalar< SCA , TSV<T1,D> , APP > :: apply(sca,rhs);\
}

Definition at line 42 of file TSVMeta.h.