SeqAn3 3.4.0-rc.1
The Modern C++ library for sequence analysis.
|
A crtp-base class for alignment traceback matrices. More...
#include <seqan3/alignment/matrix/detail/alignment_trace_matrix_base.hpp>
Public Attributes | |
std::vector< element_type, allocator_type > | cache_left {} |
Internal cache for the trace values to the left. | |
element_type | cache_up {} |
Internal cache for the last trace value above. | |
pool_type | data {} |
The linearised matrix storing the trace data in column-major-order. | |
size_type | num_cols {} |
The number of columns. | |
size_type | num_rows {} |
The number of num_rows. | |
Protected Types | |
using | allocator_type = std::conditional_t< detail::simd_concept< trace_t >, aligned_allocator< element_type, sizeof(element_type)>, std::allocator< element_type > > |
The allocator type. Uses seqan3::aligned_allocator if storing seqan3::detail::simd_concepttypes. | |
using | coordinate_type = advanceable_alignment_coordinate< advanceable_alignment_coordinate_state::row > |
The coordinate type. | |
using | element_type = trace_t |
The actual element type. | |
using | pool_type = two_dimensional_matrix< element_type, allocator_type, matrix_major_order::column > |
The type of the underlying memory pool. | |
using | size_type = size_t |
The size type. | |
A crtp-base class for alignment traceback matrices.
derived_t | The derived type. |
trace_t | The type of the trace directions. |
Manages the actual storage as a std::vector. How much memory is allocated is handled by the derived type. The trace_t
must be either a seqan3::detail::trace_directions enum value or a seqan3::detail::simd_conceptvector over seqan3::detail::trace_directions.