31template <two_dimensional_matrix_iterator matrix_iter_t>
35 static_assert(std::same_as<std::iter_value_t<matrix_iter_t>,
trace_directions>,
36 "Value type of the underlying iterator must be trace_directions.");
67 template <two_dimensional_matrix_iterator other_matrix_iter_t>
68 requires std::constructible_from<matrix_iter_t, other_matrix_iter_t>
A CRTP-base class for trace iterator implementations for the alignment algorithms.
Definition: trace_iterator_base.hpp:64
matrix_iter_t matrix_iter
The underlying matrix iterator.
Definition: trace_iterator_base.hpp:287
A trace iterator an unbanded trace matrix.
Definition: trace_iterator.hpp:33
constexpr trace_iterator(trace_iterator const &)=default
Defaulted.
~trace_iterator()=default
Defaulted.
constexpr trace_iterator & operator=(trace_iterator const &)=default
Defaulted.
constexpr trace_iterator(trace_iterator< other_matrix_iter_t > const other) noexcept
Constructs from the underlying trace matrix iterator indicating the start of the trace path.
Definition: trace_iterator.hpp:69
constexpr trace_iterator & operator=(trace_iterator &&)=default
Defaulted.
constexpr trace_iterator(trace_iterator &&)=default
Defaulted.
constexpr trace_iterator()=default
Defaulted.
constexpr trace_iterator(matrix_iter_t const matrix_iter) noexcept
Constructs from the underlying trace matrix iterator indicating the start of the trace path.
Definition: trace_iterator.hpp:55
trace_directions
The possible directions a trace can have. The values can be combined by the logical |-operator.
Definition: trace_directions.hpp:29
The internal SeqAn3 namespace.
Definition: aligned_sequence_concept.hpp:29
Provides seqan3::detail::trace_iterator_base.