35 #ifndef _BLAZE_MATH_VIEWS_ROW_H_
36 #define _BLAZE_MATH_VIEWS_ROW_H_
81 inline typename EnableIf< IsMatMatAddExpr<MT>,
typename RowExprTrait<MT>::Type >::Type
82 row(
const Matrix<MT,SO>& matrix,
size_t index )
86 return row( (~matrix).leftOperand(), index ) +
row( (~matrix).rightOperand(), index );
104 template<
typename MT
106 inline typename EnableIf< IsMatMatSubExpr<MT>,
typename RowExprTrait<MT>::Type >::Type
107 row(
const Matrix<MT,SO>& matrix,
size_t index )
111 return row( (~matrix).leftOperand(), index ) -
row( (~matrix).rightOperand(), index );
129 template<
typename MT
131 inline typename EnableIf< IsMatMatMultExpr<MT>,
typename RowExprTrait<MT>::Type >::Type
132 row(
const Matrix<MT,SO>& matrix,
size_t index )
136 return row( (~matrix).leftOperand(), index ) * (~matrix).rightOperand();
153 template<
typename MT
155 inline typename EnableIf< IsVecTVecMultExpr<MT>,
typename RowExprTrait<MT>::Type >::Type
156 row(
const Matrix<MT,SO>& matrix,
size_t index )
160 return (~matrix).leftOperand()[index] * (~matrix).rightOperand();
178 template<
typename MT
180 inline typename EnableIf< IsMatScalarMultExpr<MT>,
typename RowExprTrait<MT>::Type >::Type
181 row(
const Matrix<MT,SO>& matrix,
size_t index )
185 return row( (~matrix).leftOperand(), index ) * (~matrix).rightOperand();
203 template<
typename MT
205 inline typename EnableIf< IsMatScalarDivExpr<MT>,
typename RowExprTrait<MT>::Type >::Type
206 row(
const Matrix<MT,SO>& matrix,
size_t index )
210 return row( (~matrix).leftOperand(), index ) / (~matrix).rightOperand();
228 template<
typename MT
230 inline typename EnableIf< IsMatAbsExpr<MT>,
typename RowExprTrait<MT>::Type >::Type
231 row(
const Matrix<MT,SO>& matrix,
size_t index )
235 return abs(
row( (~matrix).operand(), index ) );
253 template<
typename MT
255 inline typename EnableIf< IsMatEvalExpr<MT>,
typename RowExprTrait<MT>::Type >::Type
256 row(
const Matrix<MT,SO>& matrix,
size_t index )
260 return eval(
row( (~matrix).operand(), index ) );
278 template<
typename MT
280 inline typename EnableIf< IsMatTransExpr<MT>,
typename RowExprTrait<MT>::Type >::Type
281 row(
const Matrix<MT,SO>& matrix,
size_t index )
285 return trans(
column( (~matrix).operand(), index ) );
DisableIf< Or< IsComputation< MT >, IsTransExpr< MT > >, DenseColumn< MT > >::Type column(DenseMatrix< MT, SO > &dm, size_t index)
Creating a view on a specific column of the given dense matrix.
Definition: DenseColumn.h:3026
const DMatTransExpr< MT,!SO > trans(const DenseMatrix< MT, SO > &dm)
Calculation of the transpose of the given dense matrix.
Definition: DMatTransExpr.h:446
const DMatAbsExpr< MT, SO > abs(const DenseMatrix< MT, SO > &dm)
Returns a matrix containing the absolute values of each single element of dm.
Definition: DMatAbsExpr.h:739
Header file for the IsMatMatAddExpr type trait class.
Header file for the IsMatTransExpr type trait class.
Header file for the IsMatAbsExpr type trait class.
Header file for the IsVecTVecMultExpr type trait class.
Header file for the IsMatMatMultExpr type trait class.
Header file for the IsMatScalarMultExpr type trait class.
Header file for the IsMatEvalExpr type trait class.
Header file for the RowExprTrait class template.
Header file for the EnableIf class template.
Header file for the Matrix base class.
Header file for the IsMatScalarDivExpr type trait class.
DisableIf< Or< IsComputation< MT >, IsTransExpr< MT > >, DenseRow< MT > >::Type row(DenseMatrix< MT, SO > &dm, size_t index)
Creating a view on a specific row of the given dense matrix.
Definition: DenseRow.h:3025
const DMatEvalExpr< MT, SO > eval(const DenseMatrix< MT, SO > &dm)
Forces the evaluation of the given dense matrix expression dm.
Definition: DMatEvalExpr.h:395
Header file for the IsMatMatSubExpr type trait class.
#define BLAZE_FUNCTION_TRACE
Function trace macro.This macro can be used to reliably trace function calls. In case function tracin...
Definition: FunctionTrace.h:157
Header file for basic type definitions.
Header file for the FunctionTrace class.