Access proxy for lower triangular matrices.
More...
#include <LowerProxy.h>
Inherits blaze::Proxy< LowerProxy< MT >, ElementType_t< MT > >.
|
template<typename T > |
const LowerProxy< MT > & | operator= (initializer_list< T > list) const |
| Initializer list assignment to the accessed matrix element. More...
|
|
template<typename T > |
const LowerProxy< MT > & | operator= (initializer_list< initializer_list< T > > list) const |
| Initializer list assignment to the accessed matrix element. More...
|
|
template<typename T > |
const LowerProxy< MT > & | operator= (const T &value) const |
| Assignment to the accessed matrix element. More...
|
|
template<typename T > |
const LowerProxy< MT > & | operator+= (const T &value) const |
| Addition assignment to the accessed matrix element. More...
|
|
template<typename T > |
const LowerProxy< MT > & | operator-= (const T &value) const |
| Subtraction assignment to the accessed matrix element. More...
|
|
template<typename T > |
const LowerProxy< MT > & | operator*= (const T &value) const |
| Multiplication assignment to the accessed matrix element. More...
|
|
template<typename T > |
const LowerProxy< MT > & | operator/= (const T &value) const |
| Division assignment to the accessed matrix element. More...
|
|
template<typename T > |
const LowerProxy< MT > & | operator%= (const T &value) const |
| Modulo assignment to the accessed matrix element. More...
|
|
|
| LowerProxy (MT &matrix, size_t row, size_t column) |
| Initialization constructor for a LowerProxy. More...
|
|
| LowerProxy (const LowerProxy &)=default |
|
|
| ~LowerProxy ()=default |
|
|
const LowerProxy & | operator= (const LowerProxy &lp) const |
| Copy assignment operator for LowerProxy. More...
|
|
template<typename T > |
const LowerProxy & | operator= (initializer_list< T > list) const |
|
template<typename T > |
const LowerProxy & | operator= (initializer_list< initializer_list< T > > list) const |
|
template<typename T > |
const LowerProxy & | operator= (const T &value) const |
|
template<typename T > |
const LowerProxy & | operator+= (const T &value) const |
|
template<typename T > |
const LowerProxy & | operator-= (const T &value) const |
|
template<typename T > |
const LowerProxy & | operator*= (const T &value) const |
|
template<typename T > |
const LowerProxy & | operator/= (const T &value) const |
|
template<typename T > |
const LowerProxy & | operator%= (const T &value) const |
|
|
const LowerProxy * | operator-> () const noexcept |
| Direct access to the accessed matrix element. More...
|
|
|
RawReference | get () const noexcept |
| Returning the value of the accessed matrix element. More...
|
|
bool | isRestricted () const noexcept |
| Returns whether the proxy represents a restricted matrix element. More...
|
|
|
| operator ConstReference () const noexcept |
| Conversion to the accessed matrix element. More...
|
|
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;
Matrix adapter for lower triangular matrices.
Definition: BaseTemplate.h:558
◆ LowerProxy()
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. |
◆ 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->()
Direct access to the accessed matrix element.
- Returns
- Pointer to the accessed matrix element.
◆ 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 >
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.
◆ 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 >
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.
◆ 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: