SeqAn3  3.0.1
The Modern C++ library for sequence analysis.
seqan3::back_end_first< value_t > Struct Template Reference

The penalty configuration for aligning the back of the first sequence with a gap. More...

#include <seqan3/alignment/configuration/align_config_aligned_ends.hpp>

+ Inheritance diagram for seqan3::back_end_first< value_t >:

Public Member Functions

constexpr bool operator() () const noexcept
 Returns the wrapped value.
 

Public Attributes

value_t value
 The wrapped value.
 

Static Protected Attributes

static constexpr bool is_static
 Used to differentiate between static and dynamic state.
 
static constexpr bool static_value
 Holds the static value if the state is static.
 

Related Functions

(Note that these are not member functions.)

Type deduction guides
template<typename value_t >
 back_end_first (value_t) -> back_end_first< value_t >
 Deduces the template argument from the type of the wrapped value.
 

Detailed Description

template<typename value_t>
struct seqan3::back_end_first< value_t >

The penalty configuration for aligning the back of the first sequence with a gap.

Template Parameters
value_tThe type of the value to be wrapped. Can be of type std::true_type, std::false_type or bool.
value_tThe type of the value to be wrapped. Can be of type std::true_type, std::false_type or bool.

This strong type enables (false) or disables (true) penalties for aligning the respective sequence end with gaps. If one constructs this element with a std::integral_constant it will convert to a static type such that compile time optimisations can be used. If the type is constructed from a bool it will convert to a dynamic type but will be converted to a static type during the configuration of the pairwise alignment algorithm. Using a bool allows to dynamically set the value if the option is only known at runtime. If the option is already known at compile time the static version will be the preferred option.

See also
seqan3::back_end_first
seqan3::front_end_second
seqan3::back_end_second
front_end_first
front_end_second
back_end_second

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