27template <
typename field_types,
typename field_
ids>
38 using field_constant =
typename base_t::template field_constant<f>;
40 using base_t::get_impl;
58 decltype(
auto)
id() &&
60 return get_impl(field_constant<seqan3::field::id>{},
static_cast<tuple_base_t &&
>(*this));
63 decltype(
auto)
id()
const &&
65 return get_impl(field_constant<seqan3::field::id>{},
static_cast<tuple_base_t
const &&
>(*this));
70 return get_impl(field_constant<seqan3::field::id>{},
static_cast<tuple_base_t &
>(*this));
73 decltype(
auto)
id()
const &
75 return get_impl(field_constant<seqan3::field::id>{},
static_cast<tuple_base_t
const &
>(*this));
81 return get_impl(field_constant<seqan3::field::seq>{},
static_cast<tuple_base_t &&
>(*this));
86 return get_impl(field_constant<seqan3::field::seq>{},
static_cast<tuple_base_t
const &&
>(*this));
91 return get_impl(field_constant<seqan3::field::seq>{},
static_cast<tuple_base_t &
>(*this));
96 return get_impl(field_constant<seqan3::field::seq>{},
static_cast<tuple_base_t
const &
>(*this));
102 return get_impl(field_constant<seqan3::field::structure>{},
static_cast<tuple_base_t &&
>(*this));
107 return get_impl(field_constant<seqan3::field::structure>{},
static_cast<tuple_base_t
const &&
>(*this));
112 return get_impl(field_constant<seqan3::field::structure>{},
static_cast<tuple_base_t &
>(*this));
117 return get_impl(field_constant<seqan3::field::structure>{},
static_cast<tuple_base_t
const &
>(*this));
123 return get_impl(field_constant<seqan3::field::energy>{},
static_cast<tuple_base_t &&
>(*this));
128 return get_impl(field_constant<seqan3::field::energy>{},
static_cast<tuple_base_t
const &&
>(*this));
133 return get_impl(field_constant<seqan3::field::energy>{},
static_cast<tuple_base_t &
>(*this));
138 return get_impl(field_constant<seqan3::field::energy>{},
static_cast<tuple_base_t
const &
>(*this));
145 return get_impl(field_constant<seqan3::field::bpp>{},
static_cast<tuple_base_t &&
>(*this));
150 return get_impl(field_constant<seqan3::field::bpp>{},
static_cast<tuple_base_t
const &&
>(*this));
155 return get_impl(field_constant<seqan3::field::bpp>{},
static_cast<tuple_base_t &
>(*this));
160 return get_impl(field_constant<seqan3::field::bpp>{},
static_cast<tuple_base_t
const &
>(*this));
178template <
typename field_types,
typename field_
ids>
179struct tuple_size<
seqan3::structure_record<field_types, field_ids>> :
180 tuple_size<typename seqan3::structure_record<field_types, field_ids>::base_type>
188template <
size_t elem_no,
typename field_types,
typename field_
ids>
189struct tuple_element<elem_no,
seqan3::structure_record<field_types, field_ids>> :
190 tuple_element<elem_no, typename seqan3::structure_record<field_types, field_ids>::base_type>
The record type of seqan3::structure_file_input.
Definition: structure_file/record.hpp:29
structure_record()=default
Defaulted.
decltype(auto) base_pair_probability_matrix() &&
Base pair probability matrix of interactions, usually a matrix of float numbers.
Definition: structure_file/record.hpp:142
decltype(auto) energy() &&
Energy of a folded sequence, represented by one float number.
Definition: structure_file/record.hpp:121
structure_record & operator=(structure_record &&)=default
Defaulted.
decltype(auto) energy() &
Energy of a folded sequence, represented by one float number.
Definition: structure_file/record.hpp:131
decltype(auto) sequence() const &
The "sequence", usually a range of nucleotides or amino acids.
Definition: structure_file/record.hpp:94
decltype(auto) sequence_structure() &
Fixed interactions, usually a string of structure alphabet characters.
Definition: structure_file/record.hpp:110
decltype(auto) base_pair_probability_matrix() &
Base pair probability matrix of interactions, usually a matrix of float numbers.
Definition: structure_file/record.hpp:153
decltype(auto) sequence_structure() const &&
Fixed interactions, usually a string of structure alphabet characters.
Definition: structure_file/record.hpp:105
structure_record(structure_record &&)=default
Defaulted.
decltype(auto) base_pair_probability_matrix() const &
Base pair probability matrix of interactions, usually a matrix of float numbers.
Definition: structure_file/record.hpp:158
decltype(auto) base_pair_probability_matrix() const &&
Base pair probability matrix of interactions, usually a matrix of float numbers.
Definition: structure_file/record.hpp:148
~structure_record()=default
Defaulted.
decltype(auto) sequence() &&
The "sequence", usually a range of nucleotides or amino acids.
Definition: structure_file/record.hpp:79
decltype(auto) sequence_structure() const &
Fixed interactions, usually a string of structure alphabet characters.
Definition: structure_file/record.hpp:115
decltype(auto) sequence_structure() &&
Fixed interactions, usually a string of structure alphabet characters.
Definition: structure_file/record.hpp:100
decltype(auto) energy() const &&
Energy of a folded sequence, represented by one float number.
Definition: structure_file/record.hpp:126
decltype(auto) energy() const &
Energy of a folded sequence, represented by one float number.
Definition: structure_file/record.hpp:136
structure_record & operator=(structure_record const &)=default
Defaulted.
decltype(auto) sequence() &
The "sequence", usually a range of nucleotides or amino acids.
Definition: structure_file/record.hpp:89
structure_record(structure_record const &)=default
Defaulted.
decltype(auto) sequence() const &&
The "sequence", usually a range of nucleotides or amino acids.
Definition: structure_file/record.hpp:84
The main SeqAn3 namespace.
Definition: aligned_sequence_concept.hpp:29
SeqAn specific customisations in the standard namespace.
Provides the seqan3::record template and the seqan3::field enum.
The class template that file records are based on; behaves like a std::tuple.
Definition: record.hpp:193
detail::transfer_template_args_onto_t< field_types, std::tuple > base_type
A specialisation of std::tuple.
Definition: record.hpp:218