A representation of a location or offset within a two-dimensional matrix.
More...
#include <seqan3/alignment/matrix/detail/matrix_coordinate.hpp>
|
template<std::integral first_index_t, std::integral second_index_t> |
constexpr | operator std::pair< first_index_t, second_index_t > () const noexcept |
| Explicit conversion to the a std::pair.
|
|
|
constexpr | matrix_index ()=default |
| Defaulted.
|
|
constexpr | matrix_index (matrix_index const &)=default |
| Defaulted.
|
|
constexpr | matrix_index (matrix_index &&)=default |
| Defaulted.
|
|
constexpr matrix_index & | operator= (matrix_index const &)=default |
| Defaulted.
|
|
constexpr matrix_index & | operator= (matrix_index &&)=default |
| Defaulted.
|
|
| ~matrix_index ()=default |
| Defaulted.
|
|
constexpr | matrix_index (row_index_type< index_t > const row_idx, column_index_type< index_t > const col_idx) noexcept |
| Construction from strongly typed row index and column index.
|
|
template<seqan3::arithmetic scalar_index_t>
requires simd_index<index_t> |
constexpr | matrix_index (row_index_type< scalar_index_t > const row_idx, column_index_type< scalar_index_t > const col_idx) noexcept |
| Construction from strongly typed row index and column index over a scalar type when the index is a simd vector.
|
|
template<std::integral other_index_t>
requires (!std::same_as<other_index_t, index_t>) |
constexpr | matrix_index (matrix_index< other_index_t > other) noexcept |
| Construction from other matrix_index with different integral type.
|
|
|
index_t | col {} |
| The column index.
|
|
index_t | row {} |
| The row index.
|
|
template<typename index_t>
requires (std::integral<index_t> ||
simd_index<index_t>)
struct seqan3::detail::matrix_index< index_t >
A representation of a location or offset within a two-dimensional matrix.
- Template Parameters
-
◆ matrix_index() [1/3]
template<typename index_t >
Construction from strongly typed row index and column index.
- Parameters
-
row_idx | The row index to set. |
col_idx | The column index to set. |
◆ matrix_index() [2/3]
template<typename index_t >
Construction from strongly typed row index and column index over a scalar type when the index is a simd vector.
- Template Parameters
-
scalar_index_t | The type of the scalar index type; must model seqan3::arithmetic and must model std::convertible_to the scalar type of the simd vector index_t . |
- Parameters
-
row_idx | The row index to set. |
col_idx | The column index to set. |
This constructor initialises the row and col index which is represented as simd vectors. The vectors are initialised with the scalar types of the given strong types over the scalar value. This constructor is only available if index_t
is a simd vector type and the scalar_index_t
is convertible to the scalar type of the simd index.
◆ matrix_index() [3/3]
template<typename index_t >
template<std::integral other_index_t>
requires (!std::same_as<other_index_t, index_t>)
|
inlineexplicitconstexprnoexcept |
Construction from other matrix_index with different integral type.
- Parameters
-
The documentation for this struct was generated from the following file: