OGS
MatrixVectorTraits.h File Reference
Include dependency graph for MatrixVectorTraits.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  MathLib

Macros

#define SPECIALIZE_MATRIX_VECTOR_TRAITS(MATVEC, IDX)

Functions

 MathLib::SPECIALIZE_MATRIX_VECTOR_TRAITS (PETScMatrix, PETScMatrix::IndexType)
 MathLib::SPECIALIZE_MATRIX_VECTOR_TRAITS (PETScVector, PETScVector::IndexType)

Macro Definition Documentation

◆ SPECIALIZE_MATRIX_VECTOR_TRAITS

#define SPECIALIZE_MATRIX_VECTOR_TRAITS ( MATVEC,
IDX )
Value:
template <> \
struct MatrixVectorTraits<MATVEC> \
{ \
using Index = IDX; \
static std::unique_ptr<MATVEC> newInstance(); \
static std::unique_ptr<MATVEC> newInstance(MATVEC const& A); \
static std::unique_ptr<MATVEC> newInstance( \
MatrixSpecifications const& spec); \
static std::unique_ptr<MATVEC> newInstance(Index const length); \
};

Definition at line 16 of file MatrixVectorTraits.h.

16#define SPECIALIZE_MATRIX_VECTOR_TRAITS(MATVEC, IDX) \
17 template <> \
18 struct MatrixVectorTraits<MATVEC> \
19 { \
20 using Index = IDX; \
21 static std::unique_ptr<MATVEC> newInstance(); \
22 static std::unique_ptr<MATVEC> newInstance(MATVEC const& A); \
23 static std::unique_ptr<MATVEC> newInstance( \
24 MatrixSpecifications const& spec); \
25 static std::unique_ptr<MATVEC> newInstance(Index const length); \
26 };