|
|
constexpr | nucleotide_scoring_scheme () noexcept=default |
| The default constructor (delegates to set_hamming_distance()).
|
|
template<arithmetic score_arg_t> |
constexpr | nucleotide_scoring_scheme (match_score< score_arg_t > const ms, mismatch_score< score_arg_t > const mms) |
| Constructor for the simple scheme (delegates to set_simple_scheme()).
|
|
constexpr | nucleotide_scoring_scheme (matrix_type const &matrix) noexcept |
| Constructor for a custom scheme (delegates to set_custom_matrix()).
|
|
constexpr | scoring_scheme_base (scoring_scheme_base const &) noexcept=default |
| Defaulted.
|
|
constexpr | scoring_scheme_base (scoring_scheme_base &&) noexcept=default |
| Defaulted.
|
|
constexpr scoring_scheme_base & | operator= (scoring_scheme_base const &) noexcept=default |
| Defaulted.
|
|
constexpr scoring_scheme_base & | operator= (scoring_scheme_base &&) noexcept=default |
| Defaulted.
|
|
| ~scoring_scheme_base () noexcept=default |
| Defaulted.
|
|
constexpr | scoring_scheme_base () noexcept |
| The default constructor (delegates to set_hamming_distance()).
|
|
template<arithmetic score_arg_t> |
constexpr | scoring_scheme_base (match_score< score_arg_t > const ms, mismatch_score< score_arg_t > const mms) |
| Constructor for the simple scheme (delegates to set_simple_scheme()).
|
|
constexpr | scoring_scheme_base (matrix_type const &matrix) noexcept |
| Constructor for a custom scheme (delegates to set_custom_matrix()).
|
|
constexpr void | set_hamming_distance () noexcept |
| Set the hamming scheme, a variant of the simple scheme where match is scored 0 and mismatch -1 .
|
|
template<arithmetic score_arg_t> |
constexpr void | set_simple_scheme (match_score< score_arg_t > const ms, mismatch_score< score_arg_t > const mms) |
| Set the simple scheme (everything is either match or mismatch).
|
|
constexpr void | set_custom_matrix (matrix_type const &matrix) noexcept |
| Set a custom scheme by passing a full matrix with arbitrary content.
|
|
template<typename alph1_t , typename alph2_t >
requires explicitly_convertible_to<alph1_t, alphabet_t> && explicitly_convertible_to<alph2_t, alphabet_t> |
constexpr score_t & | score (alph1_t const alph1, alph2_t const alph2) noexcept |
| Score two letters (either two nucleotids or two amino acids).
|
|
template<typename alph1_t , typename alph2_t >
requires explicitly_convertible_to<alph1_t, alphabet_t> && explicitly_convertible_to<alph2_t, alphabet_t> |
constexpr score_t | score (alph1_t const alph1, alph2_t const alph2) const noexcept |
| Score two letters (either two nucleotids or two amino acids).
|
|
constexpr bool | operator== (derived_t const &rhs) const noexcept |
| Checks whether *this is equal to rhs .
|
|
constexpr bool | operator!= (derived_t const &rhs) const noexcept |
| Checks whether *this is not equal to rhs .
|
|
|
(Note that these are not member functions.)
|
|
| nucleotide_scoring_scheme () -> nucleotide_scoring_scheme< int8_t > |
| Default constructed objects deduce to int8_t .
|
|
template<arithmetic score_arg_type> |
| nucleotide_scoring_scheme (match_score< score_arg_type >, mismatch_score< score_arg_type >) -> nucleotide_scoring_scheme< int8_t > |
| Attention: This guide does not actually deduce from the underlying type, but always defaults to int8_t . To use a larger type, specify the template argument manually.
|
|
template<arithmetic score_arg_type> |
| nucleotide_scoring_scheme (std::array< std::array< score_arg_type, 15 >, 15 >) -> nucleotide_scoring_scheme< score_arg_type > |
| Deduce the score type from the provided matrix.
|
|
template<
arithmetic score_type = int8_t>
class seqan3::nucleotide_scoring_scheme< score_type >
A data structure for managing and computing the score of two nucleotides.
- Template Parameters
-
score_type | The underlying type. |
You can use an instance of this class to score two nucleotides, the nucleotides need not be of the same type. Different scoring behaviour can be set via the member functions.
Example
int main()
{
<< "\n";
<< "\n";
<< "\n";
scheme2.
score(
'A'_dna15,
'G'_dna15) = 3;
score += scheme3.
score(std::get<0>(pair), std::get<1>(pair));
}
A data structure for managing and computing the score of two nucleotides.
Definition: nucleotide_scoring_scheme.hpp:38
constexpr void set_simple_scheme(match_score< score_arg_t > const ms, mismatch_score< score_arg_t > const mms)
Set the simple scheme (everything is either match or mismatch).
Definition: scoring_scheme_base.hpp:178
constexpr score_t & score(alph1_t const alph1, alph2_t const alph2) noexcept
Score two letters (either two nucleotids or two amino acids).
Definition: scoring_scheme_base.hpp:217
Provides seqan3::debug_stream and related types.
Provides seqan3::dna5, container aliases and string literals.
debug_stream_type debug_stream
A global instance of seqan3::debug_stream_type.
Definition: debug_stream.hpp:37
seqan::stl::views::zip zip
A view adaptor that takes several views and returns tuple-like values from every i-th element of each...
Definition: zip.hpp:27
The SeqAn namespace for literals.
Provides seqan3::nucleotide_scoring_scheme.
Provides seqan3::rna15, container aliases and string literals.
A strong type of underlying type score_type that represents the score of two matching characters.
Definition: scoring_scheme_base.hpp:41
A strong type of underlying type score_type that represents the score two different characters.
Definition: scoring_scheme_base.hpp:66
Provides seqan3::views::zip.