 |
SeqAn3
3.0.1
The Modern C++ library for sequence analysis.
|
|
Go to the documentation of this file.
54 template <writable_alphabet sequence_alphabet_t, writable_quality_alphabet quality_alphabet_t>
57 sequence_alphabet_t, quality_alphabet_t>
62 sequence_alphabet_t, quality_alphabet_t>;
92 SEQAN3_DOXYGEN_ONLY(( constexpr
qualified(component_type const alph) noexcept {} ))
94 SEQAN3_DOXYGEN_ONLY(( constexpr
qualified(indirect_component_type
const alph) noexcept {} ))
96 SEQAN3_DOXYGEN_ONLY(( constexpr
qualified & operator=(component_type const alph) noexcept {} ))
98 SEQAN3_DOXYGEN_ONLY(( constexpr
qualified &
operator=(indirect_component_type
const alph) noexcept {} ))
109 base_type::cummulative_alph_sizes[0]) +
110 (base_type::template to_component_rank<1>() * base_type::cummulative_alph_sizes[1]));
132 return rank_to_phred[
to_rank()];
138 return rank_to_char[
to_rank()];
155 return char_is_valid_for<sequence_alphabet_type>(c);
170 size_t seq_rank = (i / base_type::cummulative_alph_sizes[0]) %
171 seqan3::alphabet_size<quality_alphabet_type>;
189 size_t qual_rank = (i / base_type::cummulative_alph_sizes[1]) %
190 seqan3::alphabet_size<quality_alphabet_type>;
202 template <
typename sequence_alphabet_type,
typename quality_alphabet_type>
203 qualified(sequence_alphabet_type &&, quality_alphabet_type &&)
constexpr auto assign_rank_to
Assign a rank to an alphabet object.
Definition: concept.hpp:238
constexpr qualified() noexcept=default
Defaulted.
Provides seqan3::nucleotide_alphabet.
sequence_alphabet_t sequence_alphabet_type
First template parameter as member type.
Definition: qualified.hpp:66
static constexpr detail::min_viable_uint_t< size > alphabet_size
The size of the alphabet, i.e. the number of different values it can take.
Definition: alphabet_base.hpp:174
The CRTP base for a combined alphabet that contains multiple values of different alphabets at the sam...
Definition: alphabet_tuple_base.hpp:120
constexpr qualified(indirect_component_type const alph) noexcept
Construction via a value of a subtype that is assignable to one of the components.
Definition: qualified.hpp:94
constexpr char_type to_char() const noexcept
Return a character. This reads the internal sequence letter.
Definition: qualified.hpp:136
constexpr auto to_char
Return the char representation of an alphabet object.
Definition: concept.hpp:320
constexpr auto to_rank
Return the rank representation of a (semi-)alphabet object.
Definition: concept.hpp:142
constexpr qualified & assign_char(char_type const c) noexcept
Assign from a character. This modifies the internal sequence letter.
Definition: qualified.hpp:105
constexpr qualified & assign_phred(phred_type const c) noexcept
Assign from a phred value. This modifies the internal quality letter.
Definition: qualified.hpp:119
A concept that indicates whether an alphabet represents nucleotides.
constexpr phred_type to_phred() const noexcept
Return the phred value. This reads the internal quality letter.
Definition: qualified.hpp:130
decltype(seqan3::to_phred(std::declval< alphabet_type >())) alphabet_phred_t
The phred_type of the alphabet; defined as the return type of seqan3::to_phred.
Definition: concept.hpp:99
decltype(seqan3::to_char(std::declval< alphabet_type const >())) alphabet_char_t
The char_type of the alphabet; defined as the return type of seqan3::to_char.
Definition: concept.hpp:329
The main SeqAn3 namespace.
Definition: aligned_sequence_concept.hpp:36
static constexpr bool char_is_valid(char_type const c) noexcept
Validate whether a character is valid in the sequence alphabet.
Definition: qualified.hpp:153
constexpr auto to_phred
The public getter function for the phred representation of a quality score.
Definition: concept.hpp:89
constexpr auto assign_phred_to
Assign a phred score to a quality alphabet object.
Definition: concept.hpp:189
Joins an arbitrary alphabet with a quality alphabet.
Definition: qualified.hpp:55
Provides seqan3::alphabet_tuple_base.
constexpr auto assign_char_to
Assign a character to an alphabet object.
Definition: concept.hpp:416
constexpr derived_type & assign_rank(rank_type const c) noexcept
Assign from a numeric value.
Definition: alphabet_base.hpp:165
constexpr auto complement
Return the complement of a nucleotide object.
Definition: concept.hpp:93
alphabet_phred_t< quality_alphabet_type > phred_type
Equals the phred_type of the quality_alphabet_type.
Definition: qualified.hpp:73
constexpr rank_type to_rank() const noexcept
Return the letter's numeric value (rank in the alphabet).
Definition: alphabet_base.hpp:116
constexpr qualified complement() const noexcept requires nucleotide_alphabet< sequence_alphabet_t >
Return a qualified where the quality is preserved, but the sequence letter is complemented.
Definition: qualified.hpp:145
quality_alphabet_t quality_alphabet_type
Second template parameter as member type.
Definition: qualified.hpp:68
alphabet_char_t< sequence_alphabet_type > char_type
Equals the char_type of sequence_alphabet_type.
Definition: qualified.hpp:71