58 template <
typename object_t>
59 struct is_band_config :
public std::false_type
68 template <
typename object_t>
69 inline constexpr
bool is_band_config_v = is_band_config<object_t>::value;
76 template <
typename band_t>
78 requires is_band_config_v<band_t>
80 struct align_config_band
91 template <
template <
typename ...>
typename band_t>
93 requires is_band_config_v<band_t<int32_t>>
95 struct align_config_band_adaptor :
public configuration_fn_base<align_config_band_adaptor<band_t>>
105 template <
typename configuration_t, std::Integral value_t>
107 requires is_algorithm_configuration_v<remove_cvref_t<configuration_t>>
109 constexpr
auto invoke(configuration_t && cfg,
110 lower_bound<value_t>
const lower,
111 upper_bound<value_t>
const upper)
const 113 static_assert(is_valid_alignment_configuration_v<align_cfg::id::band, remove_cvref_t<configuration_t>>,
114 SEQAN3_INVALID_CONFIG(align_cfg::id::band));
116 return std::forward<configuration_t>(cfg).push_front(align_config_band<band_t<value_t>>{{lower, upper}});
123 struct on_align_config<align_cfg::id::band>
126 template <config_element_concept t>
127 using invoke =
typename is_type_specialisation_of<t, align_config_band>::type;
136 template <
typename band_t>
137 struct align_config_type_to_id<align_config_band<band_t>>
144 template <std::Integral value_t>
145 struct is_band_config<
band_static<value_t>> :
public std::true_type
156 inline constexpr detail::align_config_band_adaptor<seqan3::band_static>
band_static;
Provides seqan3::type_list and auxiliary metafunctions.
A special sub namespace for the alignment configurations.
Definition: align_config_band.hpp:151
Provides functionality to access get function by enum values.
constexpr detail::align_config_band_adaptor< seqan3::band_static > band_static
A configuration adaptor for a static band.
Definition: align_config_band.hpp:156
Definition: aligned_sequence_concept.hpp:288
Provides seqan3::band_static.
id
Specifies an id for every configuration element.
Definition: utility.hpp:66
Provides various metafunctions on generic types.
Meta-Header for components of the algorithm submodule.