matrix_expression.h

Back to Matrix class

pastel/math/matrix/

// Description: Matrix expressions
// Documentation: matrix.txt

#ifndef PASTELMATH_MATRIX_EXPRESSION_H
#define PASTELMATH_MATRIX_EXPRESSION_H

#include "pastel/math/matrix/matrix.h"

#include "pastel/sys/mytypes.h"

namespace Pastel
{

    template <typename Real, typename Expression>
    class MatrixExpression;

    template <typename Real, typename Expression>
    class MatrixNegation;

    template <
        typename Real,
        typename LeftExpression,
        typename RightExpression>
    class MatrixAddition;

    template <
        typename Real,
        typename LeftExpression,
        typename RightExpression>
    class MatrixSubtraction;

    template <
        typename Real,
        typename LeftExpression,
        typename RightExpression>
    class MatrixMultiplication;

    template <typename Real, typename Expression>
    class MatrixScalarMultiplication;

    template <typename Real, typename Expression>
    class MatrixScalarAddition;

    template <typename Real, typename Expression>
    class MatrixDiagonal;

    template <typename Real>
    class MatrixConstant;

    template <typename Real, typename Expression>
    class MatrixTranspose;

    template <typename Real>
    class ArrayMatrix;

    template <
        typename Real,
        integer N,
        typename LeftExpression,
        typename RightExpression>
    class MatrixVectorMultiplication;

    template <
        typename Real, integer N,
        typename VectorExpression,
        typename MatrixExpression>
    class VectorMatrixMultiplication;

}

#include "pastel/math/matrix/matrix_expression.hpp"

#include "pastel/math/matrix/matrix_expression_more.h"

#endif