|
SeqAn3 3.4.1-rc.1
The Modern C++ library for sequence analysis.
|
A CRTP-base that refines seqan3::alphabet_base and is used by the quality alphabets. More...
#include <seqan3/alphabet/quality/phred_base.hpp>
Inheritance diagram for seqan3::phred_base< derived_type, size >:Public Types | |
Member types | |
| using | phred_type = int8_t |
| The integer representation of the quality score. | |
Public Member Functions | |
Read functions | |
| constexpr phred_type | to_phred () const noexcept |
| Return the alphabet's value in Phred score representation. | |
Write functions | |
| constexpr derived_type & | assign_phred (phred_type const p) noexcept |
| Assign from the numeric Phred score value. | |
Public Member Functions inherited from seqan3::alphabet_base< derived_type, size, char > | |
| constexpr | alphabet_base () noexcept=default |
| Defaulted. | |
| constexpr | alphabet_base (alphabet_base const &) noexcept=default |
| Defaulted. | |
| constexpr | alphabet_base (alphabet_base &&) noexcept=default |
| Defaulted. | |
| constexpr alphabet_base & | operator= (alphabet_base const &) noexcept=default |
| Defaulted. | |
| constexpr alphabet_base & | operator= (alphabet_base &&) noexcept=default |
| Defaulted. | |
| ~alphabet_base () noexcept=default | |
| Defaulted. | |
| constexpr char_type | to_char () const noexcept |
| Return the letter as a character of char_type. | |
| constexpr rank_type | to_rank () const noexcept |
| Return the letter's numeric value (rank in the alphabet). | |
| constexpr derived_type & | assign_char (char_type const chr) noexcept |
| Assign from a character, implicitly converts invalid characters. | |
| constexpr derived_type & | assign_rank (rank_type const c) noexcept |
| Assign from a numeric value. | |
Private Types | |
| using | base_t = alphabet_base< derived_type, size, char > |
| The base type. | |
Static Private Member Functions | |
| static constexpr rank_type | char_to_rank (char_type const chr) |
| Returns the rank representation of character. | |
| static constexpr char_type | rank_to_char (rank_type const rank) |
| Returns the character representation of rank. | |
Private Attributes | |
| friend | base_t |
| Befriend the base type so it can access seqan3::alphabet_base::char_to_rank and seqan3::alphabet_base::rank_to_char. | |
Static Private Attributes | |
| static constexpr std::array< rank_type, 256 > | phred_to_rank |
| Phred to rank conversion table. | |
| static constexpr std::array< phred_type, alphabet_size > | rank_to_phred |
| Rank to phred conversion table. | |
Constructors, destructor and assignment | |
| friend | derived_type |
| Befriend the derived_type so it can instantiate. | |
| constexpr | phred_base () noexcept=default |
| Defaulted. | |
| constexpr | phred_base (phred_base const &) noexcept=default |
| Defaulted. | |
| constexpr | phred_base (phred_base &&) noexcept=default |
| Defaulted. | |
| constexpr phred_base & | operator= (phred_base const &) noexcept=default |
| Defaulted. | |
| constexpr phred_base & | operator= (phred_base &&) noexcept=default |
| Defaulted. | |
| ~phred_base () noexcept=default | |
| Defaulted. | |
| template<typename other_qual_type > requires (!std::same_as<phred_base, other_qual_type>) && (!std::same_as<derived_type, other_qual_type>) && quality_alphabet<other_qual_type> | |
| constexpr | phred_base (other_qual_type const &other) noexcept |
| Allow explicit construction from any other quality type by means of the Phred score representation. | |
Additional Inherited Members | |
Static Public Attributes inherited from seqan3::alphabet_base< derived_type, size, char > | |
| 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. | |
Protected Types inherited from seqan3::alphabet_base< derived_type, size, char > | |
| using | char_type = std::conditional_t< std::same_as< char, void >, char, char > |
| The char representation; conditional needed to make semi alphabet definitions legal. | |
| using | rank_type = detail::min_viable_uint_t< size - 1 > |
| The type of the alphabet when represented as a number (e.g. via to_rank()). | |
A CRTP-base that refines seqan3::alphabet_base and is used by the quality alphabets.
| derived_type | The CRTP parameter type. |
| size | The size of the alphabet. |
| using seqan3::phred_base< derived_type, size >::phred_type = int8_t |
The integer representation of the quality score.
|
inlineexplicitconstexprnoexcept |
Allow explicit construction from any other quality type by means of the Phred score representation.
|
inlineconstexprnoexcept |
Assign from the numeric Phred score value.
Satisfies the seqan3::writable_quality_alphabet requirement via the seqan3::assign_rank_to() wrapper.
Constant.
|
inlinestaticconstexprprivate |
Returns the rank representation of character.
This function is required by seqan3::alphabet_base.
|
inlinestaticconstexprprivate |
Returns the character representation of rank.
This function is required by seqan3::alphabet_base.
|
inlineconstexprnoexcept |
Return the alphabet's value in Phred score representation.
|
staticconstexprprivate |
Phred to rank conversion table.
|
staticconstexprprivate |
Rank to phred conversion table.