35#ifndef _BLAZE_MATH_SMP_DEFAULT_SPARSEMATRIX_H_
36#define _BLAZE_MATH_SMP_DEFAULT_SPARSEMATRIX_H_
61template<
typename MT1,
bool SO1,
typename MT2,
bool SO2 >
62auto smpAssign( Matrix<MT1,SO1>& lhs,
const Matrix<MT2,SO2>& rhs )
63 -> EnableIf_t< IsSparseMatrix_v<MT1> >;
65template<
typename MT1,
bool SO1,
typename MT2,
bool SO2 >
66auto smpAddAssign( Matrix<MT1,SO1>& lhs,
const Matrix<MT2,SO2>& rhs )
67 -> EnableIf_t< IsSparseMatrix_v<MT1> >;
69template<
typename MT1,
bool SO1,
typename MT2,
bool SO2 >
70auto smpSubAssign( Matrix<MT1,SO1>& lhs,
const Matrix<MT2,SO2>& rhs )
71 -> EnableIf_t< IsSparseMatrix_v<MT1> >;
73template<
typename MT1,
bool SO1,
typename MT2,
bool SO2 >
74auto smpSchurAssign( Matrix<MT1,SO1>& lhs,
const Matrix<MT2,SO2>& rhs )
75 -> EnableIf_t< IsSparseMatrix_v<MT1> >;
98inline auto smpAssign( Matrix<MT1,SO1>& lhs,
const Matrix<MT2,SO2>& rhs )
99 -> EnableIf_t< IsSparseMatrix_v<MT1> >
106 assign( *lhs, *rhs );
125template<
typename MT1
129inline auto smpAddAssign( Matrix<MT1,SO1>& lhs,
const Matrix<MT2,SO2>& rhs )
130 -> EnableIf_t< IsSparseMatrix_v<MT1> >
137 addAssign( *lhs, *rhs );
156template<
typename MT1
160inline auto smpSubAssign( Matrix<MT1,SO1>& lhs,
const Matrix<MT2,SO2>& rhs )
161 -> EnableIf_t< IsSparseMatrix_v<MT1> >
168 subAssign( *lhs, *rhs );
188template<
typename MT1
192inline auto smpSchurAssign( Matrix<MT1,SO1>& lhs,
const Matrix<MT2,SO2>& rhs )
193 -> EnableIf_t< IsSparseMatrix_v<MT1> >
200 schurAssign( *lhs, *rhs );
Header file for run time assertion macros.
Header file for the EnableIf class template.
Header file for the function trace functionality.
Header file for the IsSparseMatrix type trait.
Header file for the Matrix base class.
#define BLAZE_INTERNAL_ASSERT(expr, msg)
Run time assertion macro for internal checks.
Definition: Assert.h:101
auto smpSubAssign(Matrix< MT1, SO1 > &lhs, const Matrix< MT2, SO2 > &rhs) -> EnableIf_t< IsDenseMatrix_v< MT1 > >
Default implementation of the SMP subtraction assignment of a matrix to dense matrix.
Definition: DenseMatrix.h:162
auto smpAssign(Matrix< MT1, SO1 > &lhs, const Matrix< MT2, SO2 > &rhs) -> EnableIf_t< IsDenseMatrix_v< MT1 > >
Default implementation of the SMP assignment of a matrix to a dense matrix.
Definition: DenseMatrix.h:100
auto smpSchurAssign(Matrix< MT1, SO1 > &lhs, const Matrix< MT2, SO2 > &rhs) -> EnableIf_t< IsDenseMatrix_v< MT1 > >
Default implementation of the SMP Schur product assignment of a matrix to dense matrix.
Definition: DenseMatrix.h:194
auto smpAddAssign(Matrix< MT1, SO1 > &lhs, const Matrix< MT2, SO2 > &rhs) -> EnableIf_t< IsDenseMatrix_v< MT1 > >
Default implementation of the SMP addition assignment of a matrix to a dense matrix.
Definition: DenseMatrix.h:131
#define BLAZE_FUNCTION_TRACE
Function trace macro.
Definition: FunctionTrace.h:94