Into

Modules

Documentation

classPiiBinaryMatrixTransform

#include <PiiConceptualMatrix.h>

A matrix that models the matrix concept by using a binary function that operates on two other matrices.

Inherits PiiConceptualMatrix< PiiBinaryMatrixTransform< Matrix1, Matrix2, BinaryFunction >, Pii::MinInt< Matrix1::implementationLevel, Matrix2::implementationLevel >::intValue >

Description

Given two models of the matrix concept, mat1 and mat2, and a binary function func, this matrix works as if it was the result of calculating func(mat1, mat2). Note that PiiBinaryMatrixTransform is immutable. It provides no way of modifying the source data.

See also

Public types

typedef PiiMatrixTraits< PiiBinaryMatrixTransform< Matrix1, Matrix2, BinaryFunction >, Pii::MinInt< Matrix1::implementationLevel, Matrix2::implementationLevel >::intValue >

Constructors and destructor

(
  • const Matrix1 & mat1
  • const Matrix2 & mat2
  • const BinaryFunction & func
)

Public member functions

Traits::const_iterator
( )
Traits::const_column_iterator
(
  • int index
)
Traits::const_column_iterator
(
  • int index
)
int
Traits::const_iterator
( )
Traits::value_type
(
  • int r
  • int c
)
Traits::const_row_iterator
(
  • int index
)
Traits::const_row_iterator
(
  • int index
)
int
( )
template<class Matrix1, class Matrix2, class BinaryFunction>
PiiBinaryMatrixTransform< Matrix1, Matrix2, BinaryFunction >
(
  • const Matrix1 & mat1
  • const Matrix2 & mat2
  • const BinaryFunction & func
)

Creates a PiiBinaryMatrixTransform that returns func(mat1, mat2).

Function details

  • PiiBinaryMatrixTransform

    ( )
    [inline]
  • PiiBinaryMatrixTransform

    (
    • const Matrix1 & mat1
    • const Matrix2 & mat2
    • const BinaryFunction & func
    )
    [inline]
  • Traits::const_iterator begin

    ()
    [inline]

    Reimplemented from PiiConceptualMatrix.

  • Traits::const_column_iterator columnBegin

    (
    • int index
    )
    [inline]
  • Traits::const_column_iterator columnEnd

    (
    • int index
    )
    [inline]
  • int columns

    ()
    [inline]

    Reimplemented from PiiConceptualMatrix.

  • Traits::const_iterator end

    ()
    [inline]

    Reimplemented from PiiConceptualMatrix.

  • Traits::value_type operator()

    (
    • int r
    • int c
    )
    [inline]
  • PiiBinaryMatrixTransform & operator=

    ( )
    [inline]
  • Traits::const_row_iterator rowBegin

    (
    • int index
    )
    [inline]
  • Traits::const_row_iterator rowEnd

    (
    • int index
    )
    [inline]
  • int rows

    ()
    [inline]

    Reimplemented from PiiConceptualMatrix.

  • template<class Matrix1, class Matrix2, class BinaryFunction>

    PiiBinaryMatrixTransform< Matrix1, Matrix2, BinaryFunction > binaryMatrixTransform

    (
    • const Matrix1 & mat1
    • const Matrix2 & mat2
    • const BinaryFunction & func
    )
    [inline]

    Creates a PiiBinaryMatrixTransform that returns func(mat1, mat2).

    Note that this function does not check that matrix and filter are equal in size.

Notes (0)

Add a note

Not a single note added yet. Be the first, add yours.