34template <
typename alignment_algorithm_t>
59 template <
typename configuration_t>
62 if constexpr (configuration_t::template exists<align_cfg::method_local>())
83 template <
typename cell_t,
typename score_t>
92 template <
typename other_alignment_algorithm_t,
typename score_t,
typename is_local_t>
95 template <
typename other_alignment_algorithm_t, simd_concept score_t,
typename is_local_t>
99 template <
typename other_alignment_algorithm_t>
114 template <
typename cell_t,
typename score_t>
136 template <
typename alignment_column_t,
typename score_t>
143 for (
auto && cell : last_column)
159 template <
typename cell_t,
typename score_t>
176 template <
typename cell_t,
typename score_t>
179 auto const & [score_cell, trace_cell] = cell;
180 state.optimum.update_if_new_optimal_score(score_cell.current,
Provides global and local alignment configurations.
Provides seqan3::detail::alignment_algorithm_state.
Provides seqan3::detail::alignment_optimum.
Sets the global alignment method.
Definition: align_config_method.hpp:122
The CRTP-policy that implements the initialisation of the dynamic programming matrix with affine gaps...
Definition: affine_gap_init_policy.hpp:37
The CRTP-policy that computes a single cell in the alignment matrix.
Definition: affine_gap_policy.hpp:47
The CRTP-policy to determine the optimum of the dynamic programming matrix.
Definition: find_optimum_policy.hpp:36
~find_optimum_policy()=default
Defaulted.
constexpr void check_score_of_cells_in_last_column(alignment_column_t &&last_column, alignment_algorithm_state< score_t > &state) const noexcept
Checks all cells of the last alignment column for a new alignment optimum.
Definition: find_optimum_policy.hpp:138
constexpr find_optimum_policy & operator=(find_optimum_policy &&)=default
Defaulted.
constexpr void check_score_of_last_cell(cell_t const &last_cell, alignment_algorithm_state< score_t > &state) const noexcept
Checks if the last cell of the alignment matrix is a new optimum in the alignment.
Definition: find_optimum_policy.hpp:160
friend alignment_algorithm_t
Befriends the derived class to grant it access to the private members.
Definition: find_optimum_policy.hpp:39
constexpr void check_and_update(cell_t const &cell, alignment_algorithm_state< score_t > &state) const noexcept
Tests if the score in the current cell is greater than the current alignment optimum.
Definition: find_optimum_policy.hpp:177
constexpr void check_score_of_last_row_cell(cell_t const &last_row_cell, alignment_algorithm_state< score_t > &state) const noexcept
Checks if a cell in the last row of the alignment matrix is a new optimum in the alignment.
Definition: find_optimum_policy.hpp:116
constexpr void check_score_of_cell(cell_t const ¤t_cell, alignment_algorithm_state< score_t > &state) const noexcept
Checks if a given cell is a new optimum in the alignment.
Definition: find_optimum_policy.hpp:84
bool test_last_column_cell
Whether cells of the last column shall be tracked.
Definition: find_optimum_policy.hpp:46
constexpr find_optimum_policy()=default
Defaulted.
bool test_every_cell
Whether every cell of the alignment matrix shall be tracked.
Definition: find_optimum_policy.hpp:42
bool test_last_row_cell
Whether cells of the last row shall be tracked.
Definition: find_optimum_policy.hpp:44
constexpr find_optimum_policy & operator=(find_optimum_policy const &)=default
Defaulted.
constexpr find_optimum_policy(find_optimum_policy &&)=default
Defaulted.
find_optimum_policy(configuration_t const &config)
Initialises the policy with the configuration.
Definition: find_optimum_policy.hpp:60
constexpr find_optimum_policy(find_optimum_policy const &)=default
Defaulted.
The CRTP-policy that computes a batch of cells in the alignment matrix using simd instructions.
Definition: simd_affine_gap_policy.hpp:54
The internal SeqAn3 namespace.
Definition: aligned_sequence_concept.hpp:29
A strong type for designated initialisation of the column index of a matrix.
Definition: matrix_coordinate.hpp:32
A strong type for designated initialisation of the row index of a matrix.
Definition: matrix_coordinate.hpp:61