QDP++
QDP::ArrayMap Class Reference

Array of general permutation map class for communications. More...

#include <qdp_parscalar_specific.h>

Public Member Functions

 ArrayMap ()
 Constructor - does nothing really.
 ~ArrayMap ()
 Destructor.
 ArrayMap (const ArrayMapFunc &fn)
 Constructor from a function object.
void make (const ArrayMapFunc &func)
 Actual constructor from a function object.
template<class T1>
OLattice< T1 > operator() (const OLattice< T1 > &l, int dir)
 Function call operator for a shift.
template<class T1>
OScalar< T1 > operator() (const OScalar< T1 > &l, int dir)
template<class RHS, class T1>
OScalar< T1 > operator() (const QDPExpr< RHS, OScalar< T1 > > &l, int dir)
template<class RHS, class T1>
OLattice< T1 > operator() (const QDPExpr< RHS, OLattice< T1 > > &l, int dir)
 ArrayMap ()
 Constructor - does nothing really.
 ~ArrayMap ()
 Destructor.
 ArrayMap (const ArrayMapFunc &fn)
 Constructor from a function object.
void make (const ArrayMapFunc &func)
 Actual constructor from a function object.
template<class T1>
OLattice< T1 > operator() (const OLattice< T1 > &l, int dir)
 Function call operator for a shift.
template<class T1>
OScalar< T1 > operator() (const OScalar< T1 > &l, int dir)
template<class RHS, class T1>
OScalar< T1 > operator() (const QDPExpr< RHS, OScalar< T1 > > &l, int dir)
template<class RHS, class T1>
OLattice< T1 > operator() (const QDPExpr< RHS, OLattice< T1 > > &l, int dir)
 ArrayMap ()
 Constructor - does nothing really.
 ~ArrayMap ()
 Destructor.
 ArrayMap (const ArrayMapFunc &fn)
 Constructor from a function object.
void make (const ArrayMapFunc &func)
 Actual constructor from a function object.
template<class T1, class C1>
MakeReturn< UnaryNode< FnMap, typenameCreateLeaf< QDPType< T1, C1 > >::Leaf_t >, C1 >::Expression_t operator() (const QDPType< T1, C1 > &l, int dir)
 Function call operator for a shift.
template<class T1, class C1>
MakeReturn< UnaryNode< FnMap, typenameCreateLeaf< QDPExpr< T1, C1 > >::Leaf_t >, C1 >::Expression_t operator() (const QDPExpr< T1, C1 > &l, int dir)
 ArrayMap ()
 Constructor - does nothing really.
 ~ArrayMap ()
 Destructor.
 ArrayMap (const ArrayMapFunc &fn)
 Constructor from a function object.
void make (const ArrayMapFunc &func)
 Actual constructor from a function object.
template<class T1>
OLattice< T1 > operator() (const OLattice< T1 > &l, int dir)
 Function call operator for a shift.
template<class T1>
OScalar< T1 > operator() (const OScalar< T1 > &l, int dir)
template<class RHS, class T1>
OScalar< T1 > operator() (const QDPExpr< RHS, OScalar< T1 > > &l, int dir)
template<class RHS, class T1>
OLattice< T1 > operator() (const QDPExpr< RHS, OLattice< T1 > > &l, int dir)

Detailed Description

Array of general permutation map class for communications.

Definition at line 2198 of file qdp_parscalar_specific.h.

Constructor & Destructor Documentation

◆ ArrayMap() [1/8]

QDP::ArrayMap::ArrayMap ( )
inline

Constructor - does nothing really.

Definition at line 2202 of file qdp_parscalar_specific.h.

◆ ~ArrayMap() [1/4]

QDP::ArrayMap::~ArrayMap ( )
inline

Destructor.

Definition at line 2205 of file qdp_parscalar_specific.h.

◆ ArrayMap() [2/8]

QDP::ArrayMap::ArrayMap ( const ArrayMapFunc & fn)
inline

Constructor from a function object.

Definition at line 2208 of file qdp_parscalar_specific.h.

References make().

◆ ArrayMap() [3/8]

QDP::ArrayMap::ArrayMap ( )
inline

Constructor - does nothing really.

Definition at line 1313 of file qdp_parscalarvec_specific.h.

◆ ~ArrayMap() [2/4]

QDP::ArrayMap::~ArrayMap ( )
inline

Destructor.

Definition at line 1316 of file qdp_parscalarvec_specific.h.

◆ ArrayMap() [4/8]

QDP::ArrayMap::ArrayMap ( const ArrayMapFunc & fn)
inline

Constructor from a function object.

Definition at line 1319 of file qdp_parscalarvec_specific.h.

References make().

◆ ArrayMap() [5/8]

QDP::ArrayMap::ArrayMap ( )
inline

Constructor - does nothing really.

Definition at line 1858 of file qdp_scalar_specific.h.

◆ ~ArrayMap() [3/4]

QDP::ArrayMap::~ArrayMap ( )
inline

Destructor.

Definition at line 1861 of file qdp_scalar_specific.h.

◆ ArrayMap() [6/8]

QDP::ArrayMap::ArrayMap ( const ArrayMapFunc & fn)
inline

Constructor from a function object.

Definition at line 1864 of file qdp_scalar_specific.h.

References make().

◆ ArrayMap() [7/8]

QDP::ArrayMap::ArrayMap ( )
inline

Constructor - does nothing really.

Definition at line 1019 of file qdp_scalarvec_specific.h.

◆ ~ArrayMap() [4/4]

QDP::ArrayMap::~ArrayMap ( )
inline

Destructor.

Definition at line 1022 of file qdp_scalarvec_specific.h.

◆ ArrayMap() [8/8]

QDP::ArrayMap::ArrayMap ( const ArrayMapFunc & fn)
inline

Constructor from a function object.

Definition at line 1025 of file qdp_scalarvec_specific.h.

References make().

Member Function Documentation

◆ make() [1/4]

void QDP::ArrayMap::make ( const ArrayMapFunc & func)

Actual constructor from a function object.

Initializer for an array of maps.

The semantics are source_site = func(dest_site,isign,dir)

Definition at line 74 of file qdp_map.cc.

References QDP::ArrayMapFunc::numArray().

Referenced by ArrayMap(), operator()(), and operator()().

◆ make() [2/4]

void QDP::ArrayMap::make ( const ArrayMapFunc & func)

Actual constructor from a function object.

The semantics are source_site = func(dest_site,isign,dir)

◆ make() [3/4]

void QDP::ArrayMap::make ( const ArrayMapFunc & func)

Actual constructor from a function object.

The semantics are source_site = func(dest_site,sign)

◆ make() [4/4]

void QDP::ArrayMap::make ( const ArrayMapFunc & func)

Actual constructor from a function object.

The semantics are source_site = func(dest_site,isign,dir)

◆ operator()() [1/14]

template<class T1>
OLattice< T1 > QDP::ArrayMap::operator() ( const OLattice< T1 > & l,
int dir )
inline

Function call operator for a shift.

map(source,dir)

Implements: dest(x) = source(map(x,dir))

Shifts on a OLattice are non-trivial. Notice, there may be an ILattice underneath which requires shift args. This routine is very architecture dependent.

Definition at line 2226 of file qdp_parscalar_specific.h.

References QDP::QDP_info().

◆ operator()() [2/14]

template<class T1>
OLattice< T1 > QDP::ArrayMap::operator() ( const OLattice< T1 > & l,
int dir )
inline

Function call operator for a shift.

map(source,dir)

Implements: dest(x) = source(map(x,dir))

Shifts on a OLattice are non-trivial. Notice, there may be an ILattice underneath which requires shift args. This routine is very architecture dependent.

Definition at line 1337 of file qdp_parscalarvec_specific.h.

References QDP::QDP_info().

◆ operator()() [3/14]

template<class T1>
OLattice< T1 > QDP::ArrayMap::operator() ( const OLattice< T1 > & l,
int dir )
inline

Function call operator for a shift.

map(source,dir)

Implements: dest(x) = source(map(x,dir))

Shifts on a OLattice are non-trivial. Notice, there may be an ILattice underneath which requires shift args. This routine is very architecture dependent.

Definition at line 1043 of file qdp_scalarvec_specific.h.

References QDP::QDP_info().

◆ operator()() [4/14]

template<class T1>
OScalar< T1 > QDP::ArrayMap::operator() ( const OScalar< T1 > & l,
int dir )
inline

Definition at line 2237 of file qdp_parscalar_specific.h.

References QDP::QDP_info().

◆ operator()() [5/14]

template<class T1>
OScalar< T1 > QDP::ArrayMap::operator() ( const OScalar< T1 > & l,
int dir )
inline

Definition at line 1348 of file qdp_parscalarvec_specific.h.

References QDP::QDP_info().

◆ operator()() [6/14]

template<class T1>
OScalar< T1 > QDP::ArrayMap::operator() ( const OScalar< T1 > & l,
int dir )
inline

Definition at line 1054 of file qdp_scalarvec_specific.h.

References QDP::QDP_info().

◆ operator()() [7/14]

template<class RHS, class T1>
OLattice< T1 > QDP::ArrayMap::operator() ( const QDPExpr< RHS, OLattice< T1 > > & l,
int dir )
inline

Definition at line 2259 of file qdp_parscalar_specific.h.

◆ operator()() [8/14]

template<class RHS, class T1>
OLattice< T1 > QDP::ArrayMap::operator() ( const QDPExpr< RHS, OLattice< T1 > > & l,
int dir )
inline

Definition at line 1370 of file qdp_parscalarvec_specific.h.

◆ operator()() [9/14]

template<class RHS, class T1>
OLattice< T1 > QDP::ArrayMap::operator() ( const QDPExpr< RHS, OLattice< T1 > > & l,
int dir )
inline

Definition at line 1076 of file qdp_scalarvec_specific.h.

◆ operator()() [10/14]

template<class RHS, class T1>
OScalar< T1 > QDP::ArrayMap::operator() ( const QDPExpr< RHS, OScalar< T1 > > & l,
int dir )
inline

Definition at line 2249 of file qdp_parscalar_specific.h.

◆ operator()() [11/14]

template<class RHS, class T1>
OScalar< T1 > QDP::ArrayMap::operator() ( const QDPExpr< RHS, OScalar< T1 > > & l,
int dir )
inline

Definition at line 1360 of file qdp_parscalarvec_specific.h.

◆ operator()() [12/14]

template<class RHS, class T1>
OScalar< T1 > QDP::ArrayMap::operator() ( const QDPExpr< RHS, OScalar< T1 > > & l,
int dir )
inline

Definition at line 1066 of file qdp_scalarvec_specific.h.

◆ operator()() [13/14]

template<class T1, class C1>
MakeReturn< UnaryNode< FnMap, typenameCreateLeaf< QDPExpr< T1, C1 > >::Leaf_t >, C1 >::Expression_t QDP::ArrayMap::operator() ( const QDPExpr< T1, C1 > & l,
int dir )
inline

Definition at line 1895 of file qdp_scalar_specific.h.

References make(), and QDP::MakeReturn< T, C >::make().

◆ operator()() [14/14]

template<class T1, class C1>
MakeReturn< UnaryNode< FnMap, typenameCreateLeaf< QDPType< T1, C1 > >::Leaf_t >, C1 >::Expression_t QDP::ArrayMap::operator() ( const QDPType< T1, C1 > & l,
int dir )
inline

Function call operator for a shift.

map(source,dir)

Implements: dest(x) = source(map(x,dir))

Shifts on a OLattice are non-trivial. Notice, there may be an ILattice underneath which requires shift args. This routine is very architecture dependent.

Definition at line 1883 of file qdp_scalar_specific.h.

References make(), and QDP::MakeReturn< T, C >::make().


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