Access proxy for lower triangular matrices.The LowerProxy provides controlled access to the elements of a non-const lower triangular matrix. It guarantees that the lower matrix invariant is not violated, i.e. that elements in the upper part of the matrix remain default values. The following example illustrates this by means of a
dense lower matrix:
More...
#include <LowerProxy.h>
Inherits blaze::Proxy< LowerProxy< MT >, ElementType_< MT > >.
template<typename MT>
class blaze::LowerProxy< MT >
Access proxy for lower triangular matrices.
The LowerProxy provides controlled access to the elements of a non-const lower triangular matrix. It guarantees that the lower matrix invariant is not violated, i.e. that elements in the upper part of the matrix remain default values. The following example illustrates this by means of a
dense lower matrix:
A(0,0) = -2;
A(1,0) = 3;
A(2,1) = 5;
A(0,2) = 7;
◆ LowerProxy() [1/2]
Initialization constructor for a LowerProxy.
- Parameters
-
matrix | Reference to the adapted matrix. |
row | The row-index of the accessed matrix element. |
column | The column-index of the accessed matrix element. |
◆ LowerProxy() [2/2]
The copy constructor for LowerProxy.
- Parameters
-
lp | Lower proxy to be copied. |
◆ get()
Returning the value of the accessed matrix element.
- Returns
- Direct/raw reference to the accessed matrix element.
◆ isRestricted()
Returns whether the proxy represents a restricted matrix element.
- Returns
- true in case access to the matrix element is restricted, false if not.
◆ operator ConstReference()
Conversion to the accessed matrix element.
- Returns
- Reference-to-const to the accessed matrix element.
◆ operator%=()
template<typename MT>
template<typename T >
Modulo assignment to the accessed matrix element.
- Parameters
-
value | The right-hand side value for the modulo operation. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to upper matrix element. |
In case the proxy represents an element in the upper matrix, a std::invalid_argument exception is thrown.
◆ operator*=()
template<typename MT>
template<typename T >
Multiplication assignment to the accessed matrix element.
- Parameters
-
value | The right-hand side value for the multiplication. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to upper matrix element. |
In case the proxy represents an element in the upper matrix, a std::invalid_argument exception is thrown.
◆ operator+=()
template<typename MT>
template<typename T >
Addition assignment to the accessed matrix element.
- Parameters
-
value | The right-hand side value to be added to the matrix element. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to upper matrix element. |
In case the proxy represents an element in the upper matrix, a std::invalid_argument exception is thrown.
◆ operator-=()
template<typename MT>
template<typename T >
Subtraction assignment to the accessed matrix element.
- Parameters
-
value | The right-hand side value to be subtracted from the matrix element. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to upper matrix element. |
In case the proxy represents an element in the upper matrix, a std::invalid_argument exception is thrown.
◆ operator/=()
template<typename MT>
template<typename T >
Division assignment to the accessed matrix element.
- Parameters
-
value | The right-hand side value for the division. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to upper matrix element. |
In case the proxy represents an element in the upper matrix, a std::invalid_argument exception is thrown.
◆ operator=() [1/4]
Copy assignment operator for LowerProxy.
- Parameters
-
lp | Lower proxy to be copied. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to upper matrix element. |
In case the proxy represents an element in the upper matrix, a std::invalid_argument exception is thrown.
◆ operator=() [2/4]
template<typename MT>
template<typename T >
Initializer list assignment to the accessed matrix element.
- Parameters
-
list | The list to be assigned to the matrix element. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to upper matrix element. |
In case the proxy represents an element in the upper matrix, a std::invalid_argument exception is thrown.
◆ operator=() [3/4]
template<typename MT>
template<typename T >
Initializer list assignment to the accessed matrix element.
- Parameters
-
list | The list to be assigned to the matrix element. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to upper matrix element. |
In case the proxy represents an element in the upper matrix, a std::invalid_argument exception is thrown.
◆ operator=() [4/4]
template<typename MT>
template<typename T >
Assignment to the accessed matrix element.
- Parameters
-
value | The new value of the matrix element. |
- Returns
- Reference to the assigned proxy.
- Exceptions
-
std::invalid_argument | Invalid assignment to upper matrix element. |
In case the proxy represents an element in the upper matrix, a std::invalid_argument exception is thrown.
◆ restricted_
Access flag for the accessed matrix element.
The flag indicates if access to the matrix element is restricted. It is true in case the proxy represents an element in the upper part of the matrix.
The documentation for this class was generated from the following file: