A policy that provides a common interface to acquire the correct alignment matrices.
More...
#include <seqan3/alignment/pairwise/detail/policy_alignment_matrix.hpp>
|
using | matrix_index_type = typename traits_t::matrix_index_type |
| The configured matrix index type to store the coordinates.
|
|
using | score_type = typename traits_t::score_type |
| The configured score type.
|
|
|
bool | last_column_is_free {} |
| A flag indicating whether the final gaps in the last column are free.
|
|
bool | last_row_is_free {} |
| A flag indicating whether the final gaps in the last row are free.
|
|
int32_t | lower_diagonal {} |
| The selected lower diagonal.
|
|
int32_t | upper_diagonal {} |
| The selected upper diagonal.
|
|
template<typename traits_t, typename alignment_matrix_t>
class seqan3::detail::policy_alignment_matrix< traits_t, alignment_matrix_t >
A policy that provides a common interface to acquire the correct alignment matrices.
- Template Parameters
-
The alignment matrix must be a matrix type that is compatible with the configured alignment algorithm. It must offer a resize member function that takes a seqan3::detail::column_index_type and seqan3::detail::row_index_type and an additional parameter to initialise the allocated matrix memory.
◆ policy_alignment_matrix()
template<typename traits_t , typename alignment_matrix_t >
template<typename alignment_configuration_t >
Constructs and initialises the algorithm using the alignment configuration.
- Template Parameters
-
alignment_configuration_t | The type of the alignment configuration; must be an instance of seqan3::configuration. |
- Parameters
-
[in] | config | The configuration passed into the algorithm. |
Initialises the members for the lower and upper diagonal. These members are only used if the banded alignment is computed.
- Exceptions
-
◆ acquire_matrices()
template<typename traits_t , typename alignment_matrix_t >
Acquires a new thread local alignment and index matrix for the given sequence sizes.
- Parameters
-
[in] | sequence1_size | The size of the first sequence. |
[in] | sequence2_size | The size of the second sequence. |
[in] | initial_score | The initial score used for the acquired alignment matrix. |
- Returns
- A std::tuple storing lvalue references to the thread local alignment and index matrix.
Acquires a thread local alignment and index matrix. Initialises the matrices with the given sequence sizes and the initial score value. In the banded alignment, the alignment matrix is reduced to the column count times the band size.
Exception
Might throw std::bad_alloc if the requested matrix size exceeds the available memory or seqan3::invalid_alignment_configuration if the band does not allow a valid computation of the configured alignment.
- Exceptions
-
◆ check_valid_band_configuration()
template<typename traits_t , typename alignment_matrix_t >
Checks whether the band is valid for the given sequence sizes.
- Parameters
-
[in] | sequence1_size | The size of the first sequence. |
[in] | sequence2_size | The size of the second sequence. |
- Exceptions
-
The documentation for this class was generated from the following file: