OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
SOffset.h File Reference
#include "Index/NDIndex.h"
#include "Utility/PAssert.h"
#include "Message/Message.h"
#include <iostream>
Include dependency graph for SOffset.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  SOffset< Dim >
class  DivideSOffsetCopyTag< Dim, Flag >
struct  SOffsetAssignOp
struct  SOffsetAddAssignOp
struct  SOffsetSubAssignOp
struct  SOffsetMultAssignOp
struct  SOffsetDivAssignOp

Functions

template<unsigned Dim>
SOffset< Dimoperator+ (const SOffset< Dim > &, const SOffset< Dim > &)
template<unsigned Dim>
SOffset< Dimoperator+ (const SOffset< Dim > &, const int *)
template<unsigned Dim>
SOffset< Dimoperator+ (const int *, const SOffset< Dim > &)
template<unsigned Dim>
NDIndex< Dimoperator+ (const NDIndex< Dim > &, const SOffset< Dim > &)
template<unsigned Dim>
NDIndex< Dimoperator+ (const SOffset< Dim > &, const NDIndex< Dim > &)
template<unsigned Dim>
SOffset< Dimoperator- (const SOffset< Dim > &, const SOffset< Dim > &)
template<unsigned Dim>
SOffset< Dimoperator- (const SOffset< Dim > &, const int *)
template<unsigned Dim>
SOffset< Dimoperator- (const int *, const SOffset< Dim > &)
template<unsigned Dim>
NDIndex< Dimoperator- (const NDIndex< Dim > &, const SOffset< Dim > &)
template<unsigned Dim>
NDIndex< Dimoperator- (const SOffset< Dim > &, const NDIndex< Dim > &)
template<unsigned Dim>
SOffset< Dimoperator* (const SOffset< Dim > &, const SOffset< Dim > &)
template<unsigned Dim>
SOffset< Dimoperator* (const SOffset< Dim > &, const int *)
template<unsigned Dim>
SOffset< Dimoperator* (const int *, const SOffset< Dim > &)
template<unsigned Dim>
NDIndex< Dimoperator* (const NDIndex< Dim > &, const SOffset< Dim > &)
template<unsigned Dim>
NDIndex< Dimoperator* (const SOffset< Dim > &, const NDIndex< Dim > &)
template<unsigned Dim>
SOffset< Dimoperator/ (const SOffset< Dim > &, const SOffset< Dim > &)
template<unsigned Dim>
SOffset< Dimoperator/ (const SOffset< Dim > &, const int *)
template<unsigned Dim>
SOffset< Dimoperator/ (const int *, const SOffset< Dim > &)
template<unsigned Dim>
NDIndex< Dimoperator/ (const NDIndex< Dim > &, const SOffset< Dim > &)
template<unsigned Dim>
SOffset< Dim > & operator- (const SOffset< Dim > &)
template<unsigned Dim>
std::ostream & operator<< (std::ostream &, const SOffset< Dim > &)
template<unsigned int Dim>
std::ostream & operator<< (std::ostream &o, const SOffset< Dim > &a)
template<class T1, class T2, class Op, unsigned int L>
void divide_soffset_op (T1 *p1, T2 *p2, Op op, DivideSOffsetCopyTag< L, 4 >)
template<class T1, class T2, class Op>
void divide_soffset_op (T1 *p1, T2 *p2, Op op, DivideSOffsetCopyTag< 3, 3 >)
template<class T1, class T2, class Op>
void divide_soffset_op (T1 *p1, T2 *p2, Op op, DivideSOffsetCopyTag< 2, 2 >)
template<class T1, class T2, class Op>
void divide_soffset_op (T1 *p1, T2 *p2, Op op, DivideSOffsetCopyTag< 1, 1 >)
template<class T1, class T2, class Op>
void divide_soffset_op (T1 *, T2 *, Op, DivideSOffsetCopyTag< 0, 0 >)
template<unsigned int L>
SOffset< L > operator+ (const SOffset< L > &a, const SOffset< L > &b)
template<unsigned int L>
SOffset< L > operator+ (const SOffset< L > &a, const int *b)
template<unsigned int L>
SOffset< L > operator+ (const int *b, const SOffset< L > &a)
template<unsigned int L>
NDIndex< L > operator+ (const SOffset< L > &a, const NDIndex< L > &b)
template<unsigned int L>
NDIndex< L > operator+ (const NDIndex< L > &b, const SOffset< L > &a)
template<unsigned int L>
SOffset< L > operator- (const SOffset< L > &a, const SOffset< L > &b)
template<unsigned int L>
SOffset< L > operator- (const SOffset< L > &a, const int *b)
template<unsigned int L>
SOffset< L > operator- (const int *b, const SOffset< L > &a)
template<unsigned int L>
NDIndex< L > operator- (const SOffset< L > &a, const NDIndex< L > &b)
template<unsigned int L>
NDIndex< L > operator- (const NDIndex< L > &b, const SOffset< L > &a)
template<unsigned int L>
SOffset< L > operator* (const SOffset< L > &a, const SOffset< L > &b)
template<unsigned int L>
SOffset< L > operator* (const SOffset< L > &a, const int *b)
template<unsigned int L>
SOffset< L > operator* (const int *b, const SOffset< L > &a)
template<unsigned int L>
NDIndex< L > operator* (const SOffset< L > &a, const NDIndex< L > &b)
template<unsigned int L>
NDIndex< L > operator* (const NDIndex< L > &b, const SOffset< L > &a)
template<unsigned int L>
SOffset< L > operator/ (const SOffset< L > &a, const SOffset< L > &b)
template<unsigned int L>
SOffset< L > operator/ (const SOffset< L > &a, const int *b)
template<unsigned int L>
SOffset< L > operator/ (const int *b, const SOffset< L > &a)
template<unsigned int L>
NDIndex< L > operator/ (const NDIndex< L > &b, const SOffset< L > &a)
template<unsigned int L>
SOffset< L > & operator- (const SOffset< L > &a)

Class Documentation

◆ DivideSOffsetCopyTag

class DivideSOffsetCopyTag
template<unsigned int Dim, int Flag>
class DivideSOffsetCopyTag< Dim, Flag >

Definition at line 273 of file SOffset.h.

Collaboration diagram for DivideSOffsetCopyTag< Dim, Flag >:

Function Documentation

◆ divide_soffset_op() [1/5]

template<class T1, class T2, class Op>
void divide_soffset_op ( T1 * ,
T2 * ,
Op ,
DivideSOffsetCopyTag< 0, 0 >  )
inline

Definition at line 333 of file SOffset.h.

◆ divide_soffset_op() [2/5]

template<class T1, class T2, class Op>
void divide_soffset_op ( T1 * p1,
T2 * p2,
Op op,
DivideSOffsetCopyTag< 1, 1 >  )
inline

Definition at line 327 of file SOffset.h.

◆ divide_soffset_op() [3/5]

template<class T1, class T2, class Op>
void divide_soffset_op ( T1 * p1,
T2 * p2,
Op op,
DivideSOffsetCopyTag< 2, 2 >  )
inline

Definition at line 320 of file SOffset.h.

◆ divide_soffset_op() [4/5]

template<class T1, class T2, class Op>
void divide_soffset_op ( T1 * p1,
T2 * p2,
Op op,
DivideSOffsetCopyTag< 3, 3 >  )
inline

Definition at line 312 of file SOffset.h.

◆ divide_soffset_op() [5/5]

template<class T1, class T2, class Op, unsigned int L>
void divide_soffset_op ( T1 * p1,
T2 * p2,
Op op,
DivideSOffsetCopyTag< L, 4 >  )
inline

Definition at line 302 of file SOffset.h.

References divide_soffset_op().

Referenced by divide_soffset_op(), SOffset< Dim >::operator*=(), SOffset< Dim >::operator+=(), SOffset< Dim >::operator-=(), SOffset< Dim >::operator/=(), SOffset< Dim >::operator=(), and SOffset< Dim >::SOffset().

Here is the call graph for this function:

◆ operator*() [1/10]

template<unsigned Dim>
SOffset< Dim > operator* ( const int * ,
const SOffset< Dim > &  )

◆ operator*() [2/10]

template<unsigned int L>
SOffset< L > operator* ( const int * b,
const SOffset< L > & a )
inline

Definition at line 561 of file SOffset.h.

References a.

◆ operator*() [3/10]

template<unsigned Dim>
NDIndex< Dim > operator* ( const NDIndex< Dim > & ,
const SOffset< Dim > &  )

◆ operator*() [4/10]

template<unsigned int L>
NDIndex< L > operator* ( const NDIndex< L > & b,
const SOffset< L > & a )
inline

Definition at line 579 of file SOffset.h.

References a.

◆ operator*() [5/10]

template<unsigned Dim>
SOffset< Dim > operator* ( const SOffset< Dim > & ,
const int *  )

◆ operator*() [6/10]

template<unsigned Dim>
NDIndex< Dim > operator* ( const SOffset< Dim > & ,
const NDIndex< Dim > &  )

◆ operator*() [7/10]

template<unsigned Dim>
SOffset< Dim > operator* ( const SOffset< Dim > & ,
const SOffset< Dim > &  )

◆ operator*() [8/10]

template<unsigned int L>
SOffset< L > operator* ( const SOffset< L > & a,
const int * b )
inline

Definition at line 553 of file SOffset.h.

References a.

◆ operator*() [9/10]

template<unsigned int L>
NDIndex< L > operator* ( const SOffset< L > & a,
const NDIndex< L > & b )
inline

Definition at line 569 of file SOffset.h.

References a.

◆ operator*() [10/10]

template<unsigned int L>
SOffset< L > operator* ( const SOffset< L > & a,
const SOffset< L > & b )
inline

Definition at line 545 of file SOffset.h.

References a.

◆ operator+() [1/10]

template<unsigned Dim>
SOffset< Dim > operator+ ( const int * ,
const SOffset< Dim > &  )

◆ operator+() [2/10]

template<unsigned int L>
SOffset< L > operator+ ( const int * b,
const SOffset< L > & a )
inline

Definition at line 473 of file SOffset.h.

References a.

◆ operator+() [3/10]

template<unsigned Dim>
NDIndex< Dim > operator+ ( const NDIndex< Dim > & ,
const SOffset< Dim > &  )

◆ operator+() [4/10]

template<unsigned int L>
NDIndex< L > operator+ ( const NDIndex< L > & b,
const SOffset< L > & a )
inline

Definition at line 491 of file SOffset.h.

References a.

◆ operator+() [5/10]

template<unsigned Dim>
SOffset< Dim > operator+ ( const SOffset< Dim > & ,
const int *  )

◆ operator+() [6/10]

template<unsigned Dim>
NDIndex< Dim > operator+ ( const SOffset< Dim > & ,
const NDIndex< Dim > &  )

◆ operator+() [7/10]

template<unsigned Dim>
SOffset< Dim > operator+ ( const SOffset< Dim > & ,
const SOffset< Dim > &  )

◆ operator+() [8/10]

template<unsigned int L>
SOffset< L > operator+ ( const SOffset< L > & a,
const int * b )
inline

Definition at line 465 of file SOffset.h.

References a.

◆ operator+() [9/10]

template<unsigned int L>
NDIndex< L > operator+ ( const SOffset< L > & a,
const NDIndex< L > & b )
inline

Definition at line 481 of file SOffset.h.

References a.

◆ operator+() [10/10]

template<unsigned int L>
SOffset< L > operator+ ( const SOffset< L > & a,
const SOffset< L > & b )
inline

Definition at line 457 of file SOffset.h.

References a.

◆ operator-() [1/12]

template<unsigned Dim>
SOffset< Dim > operator- ( const int * ,
const SOffset< Dim > &  )

◆ operator-() [2/12]

template<unsigned int L>
SOffset< L > operator- ( const int * b,
const SOffset< L > & a )
inline

Definition at line 517 of file SOffset.h.

References a.

◆ operator-() [3/12]

template<unsigned Dim>
NDIndex< Dim > operator- ( const NDIndex< Dim > & ,
const SOffset< Dim > &  )

◆ operator-() [4/12]

template<unsigned int L>
NDIndex< L > operator- ( const NDIndex< L > & b,
const SOffset< L > & a )
inline

Definition at line 535 of file SOffset.h.

References a.

◆ operator-() [5/12]

template<unsigned Dim>
SOffset< Dim > & operator- ( const SOffset< Dim > & )

◆ operator-() [6/12]

template<unsigned Dim>
SOffset< Dim > operator- ( const SOffset< Dim > & ,
const int *  )

◆ operator-() [7/12]

template<unsigned Dim>
NDIndex< Dim > operator- ( const SOffset< Dim > & ,
const NDIndex< Dim > &  )

◆ operator-() [8/12]

template<unsigned Dim>
SOffset< Dim > operator- ( const SOffset< Dim > & ,
const SOffset< Dim > &  )

◆ operator-() [9/12]

template<unsigned int L>
SOffset< L > & operator- ( const SOffset< L > & a)
inline

Definition at line 628 of file SOffset.h.

References a.

◆ operator-() [10/12]

template<unsigned int L>
SOffset< L > operator- ( const SOffset< L > & a,
const int * b )
inline

Definition at line 509 of file SOffset.h.

References a.

◆ operator-() [11/12]

template<unsigned int L>
NDIndex< L > operator- ( const SOffset< L > & a,
const NDIndex< L > & b )
inline

Definition at line 525 of file SOffset.h.

References a.

◆ operator-() [12/12]

template<unsigned int L>
SOffset< L > operator- ( const SOffset< L > & a,
const SOffset< L > & b )
inline

Definition at line 501 of file SOffset.h.

References a.

◆ operator/() [1/8]

template<unsigned Dim>
SOffset< Dim > operator/ ( const int * ,
const SOffset< Dim > &  )

◆ operator/() [2/8]

template<unsigned int L>
SOffset< L > operator/ ( const int * b,
const SOffset< L > & a )
inline

Definition at line 605 of file SOffset.h.

References a.

◆ operator/() [3/8]

template<unsigned Dim>
NDIndex< Dim > operator/ ( const NDIndex< Dim > & ,
const SOffset< Dim > &  )

◆ operator/() [4/8]

template<unsigned int L>
NDIndex< L > operator/ ( const NDIndex< L > & b,
const SOffset< L > & a )
inline

Definition at line 613 of file SOffset.h.

References a.

◆ operator/() [5/8]

template<unsigned Dim>
SOffset< Dim > operator/ ( const SOffset< Dim > & ,
const int *  )

◆ operator/() [6/8]

template<unsigned Dim>
SOffset< Dim > operator/ ( const SOffset< Dim > & ,
const SOffset< Dim > &  )

◆ operator/() [7/8]

template<unsigned int L>
SOffset< L > operator/ ( const SOffset< L > & a,
const int * b )
inline

Definition at line 597 of file SOffset.h.

References a.

◆ operator/() [8/8]

template<unsigned int L>
SOffset< L > operator/ ( const SOffset< L > & a,
const SOffset< L > & b )
inline

Definition at line 589 of file SOffset.h.

References a.

◆ operator<<() [1/2]

template<unsigned Dim>
std::ostream & operator<< ( std::ostream & o,
const SOffset< Dim > & a )
inline

Definition at line 240 of file SOffset.h.

References a, and Dim.

◆ operator<<() [2/2]

template<unsigned int Dim>
std::ostream & operator<< ( std::ostream & o,
const SOffset< Dim > & a )
inline

Definition at line 240 of file SOffset.h.

References a, and Dim.