SeqAn3 3.4.0-rc.1
The Modern C++ library for sequence analysis.
|
The protein structure alphabet of the characters "HGIEBTSCX". More...
#include <seqan3/alphabet/structure/dssp9.hpp>
Public Member Functions | |
Constructors, destructor and assignment | |
constexpr | dssp9 () noexcept=default |
Defaulted. | |
constexpr | dssp9 (dssp9 const &) noexcept=default |
Defaulted. | |
constexpr | dssp9 (dssp9 &&) noexcept=default |
Defaulted. | |
constexpr dssp9 & | operator= (dssp9 const &) noexcept=default |
Defaulted. | |
constexpr dssp9 & | operator= (dssp9 &&) noexcept=default |
Defaulted. | |
~dssp9 () noexcept=default | |
Defaulted. | |
Public Member Functions inherited from seqan3::alphabet_base< dssp9, 9 > | |
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 dssp9 & | assign_char (char_type const chr) noexcept |
Assign from a character, implicitly converts invalid characters. | |
constexpr dssp9 & | assign_rank (rank_type const c) noexcept |
Assign from a numeric value. | |
Private Types | |
using | base_t = alphabet_base< dssp9, 9 > |
The base class. | |
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 seqan3::alphabet_base. | |
Static Private Attributes | |
static constexpr std::array< rank_type, 256 > | char_to_rank_table |
The lookup table used in char_to_rank. | |
static constexpr char_type | rank_to_char_table [alphabet_size] {'H', 'B', 'E', 'G', 'I', 'T', 'S', 'C', 'X'} |
The lookup table used in rank_to_char. | |
Related Symbols | |
(Note that these are not member symbols.) | |
Structure literals | |
constexpr dssp9 | operator""_dssp9 (char const ch) noexcept |
The seqan3::dssp9 char literal. | |
constexpr std::vector< dssp9 > | operator""_dssp9 (char const *str, std::size_t len) |
The seqan3::dssp9 string literal. | |
Related Symbols inherited from semialphabet | |
template<cereal_output_archive archive_t, semialphabet alphabet_t> | |
alphabet_rank_t< alphabet_t > | save_minimal (archive_t const &, alphabet_t const &l) |
Save an alphabet letter to stream. | |
template<cereal_input_archive archive_t, typename wrapped_alphabet_t > | |
void | load_minimal (archive_t const &, wrapped_alphabet_t &&l, alphabet_rank_t< detail::strip_cereal_wrapper_t< wrapped_alphabet_t > > const &r) |
Restore an alphabet letter from a saved rank. | |
Additional Inherited Members | |
Static Public Attributes inherited from seqan3::alphabet_base< dssp9, 9 > | |
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< dssp9, 9 > | |
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()). | |
The protein structure alphabet of the characters "HGIEBTSCX".
The DSSP annotation links structure elements to protein sequences. Originally created with 7 letters as a file format for the DSSP program (https://swift.cmbi.umcn.nl/gv/dssp/), it is also used in the stockholm file format for structure alignments, extended by the characters C and X (https://en.wikipedia.org/wiki/Stockholm_format).
The letter abbreviations are as follows:
H = alpha helix B = beta bridge E = strand G = helix-3 I = helix-5 T = turn S = bend C = coil/loop X = unknown
|
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.
|
related |
The seqan3::dssp9 string literal.
[in] | str | A pointer to the character string to assign. |
[in] | len | The size of the character string to assign. |
You can use this string literal to easily assign to std::vector<seqan3::dssp9>:
|
related |
The seqan3::dssp9 char literal.
[in] | ch | The character to represent as dssp. |
You can use this char literal to assign a seqan3::dssp9 character:
|
staticconstexprprivate |
The lookup table used in char_to_rank.
We would have defined these lookup tables directly within their respective constexpr functions, but at the time of writing this, gcc did not (clang >= 4 did!) auto-generate lookup tables.
|
staticconstexprprivate |
The lookup table used in rank_to_char.
We would have defined these lookup tables directly within their respective constexpr functions, but at the time of writing this, gcc did not (clang >= 4 did!) auto-generate lookup tables.