SeqAn3 3.4.0-rc.1
The Modern C++ library for sequence analysis.
Loading...
Searching...
No Matches
seqan3::detail::alignment_trace_matrix_base< trace_t > Struct Template Reference

A crtp-base class for alignment traceback matrices. More...

#include <seqan3/alignment/matrix/detail/alignment_trace_matrix_base.hpp>

+ Inheritance diagram for seqan3::detail::alignment_trace_matrix_base< trace_t >:

Public Attributes

std::vector< element_type, allocator_typecache_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.
 

Detailed Description

template<typename trace_t>
struct seqan3::detail::alignment_trace_matrix_base< trace_t >

A crtp-base class for alignment traceback matrices.

Template Parameters
derived_tThe derived type.
trace_tThe 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.


The documentation for this struct was generated from the following file:
Hide me