SeqAn3  3.0.3
The Modern C++ library for sequence analysis.
align_config_output.hpp
Go to the documentation of this file.
1 // -----------------------------------------------------------------------------------------------------
2 // Copyright (c) 2006-2020, Knut Reinert & Freie Universität Berlin
3 // Copyright (c) 2016-2020, Knut Reinert & MPI für molekulare Genetik
4 // This file may be used, modified and/or redistributed under the terms of the 3-clause BSD-License
5 // shipped with this file and also available at: https://github.com/seqan/seqan3/blob/master/LICENSE.md
6 // -----------------------------------------------------------------------------------------------------
7 
13 #pragma once
14 
19 
20 namespace seqan3::align_cfg
21 {
22 
42 class output_score : public pipeable_config_element<output_score>
43 {
44 public:
48  constexpr output_score() = default;
49  constexpr output_score(output_score const &) = default;
50  constexpr output_score(output_score &&) = default;
51  constexpr output_score & operator=(output_score const &) = default;
52  constexpr output_score & operator=(output_score &&) = default;
53  ~output_score() = default;
55 
58  static constexpr seqan3::detail::align_config_id id{seqan3::detail::align_config_id::output_score};
59 };
60 
85 class output_end_position : public pipeable_config_element<output_end_position>
86 {
87 public:
91  constexpr output_end_position() = default;
92  constexpr output_end_position(output_end_position const &) = default;
93  constexpr output_end_position(output_end_position &&) = default;
94  constexpr output_end_position & operator=(output_end_position const &) = default;
96  ~output_end_position() = default;
98 
101  static constexpr seqan3::detail::align_config_id id{seqan3::detail::align_config_id::output_end_position};
102 };
103 
128 class output_begin_position : public pipeable_config_element<output_begin_position>
129 {
130 public:
134  constexpr output_begin_position() = default;
135  constexpr output_begin_position(output_begin_position const &) = default;
137  constexpr output_begin_position & operator=(output_begin_position const &) = default;
141 
144  static constexpr seqan3::detail::align_config_id id{seqan3::detail::align_config_id::output_begin_position};
145 };
146 
167 class output_alignment : public pipeable_config_element<output_alignment>
168 {
169 public:
173  constexpr output_alignment() = default;
174  constexpr output_alignment(output_alignment const &) = default;
175  constexpr output_alignment(output_alignment &&) = default;
176  constexpr output_alignment & operator=(output_alignment const &) = default;
177  constexpr output_alignment & operator=(output_alignment &&) = default;
178  ~output_alignment() = default;
180 
183  static constexpr seqan3::detail::align_config_id id{seqan3::detail::align_config_id::output_alignment};
184 };
185 
206 class output_sequence1_id : public pipeable_config_element<output_sequence1_id>
207 {
208 public:
212  constexpr output_sequence1_id() = default;
213  constexpr output_sequence1_id(output_sequence1_id const &) = default;
214  constexpr output_sequence1_id(output_sequence1_id &&) = default;
215  constexpr output_sequence1_id & operator=(output_sequence1_id const &) = default;
217  ~output_sequence1_id() = default;
221  static constexpr seqan3::detail::align_config_id id{seqan3::detail::align_config_id::output_sequence1_id};
222 };
223 
224 
245 class output_sequence2_id : public pipeable_config_element<output_sequence2_id>
246 {
247 public:
251  constexpr output_sequence2_id() = default;
252  constexpr output_sequence2_id(output_sequence2_id const &) = default;
253  constexpr output_sequence2_id(output_sequence2_id &&) = default;
254  constexpr output_sequence2_id & operator=(output_sequence2_id const &) = default;
256  ~output_sequence2_id() = default;
258 
261  static constexpr seqan3::detail::align_config_id id{seqan3::detail::align_config_id::output_sequence2_id};
262 };
263 
264 } // namespace seqan3::align_cfg
Provides seqan3::alignment_result.
Configures the alignment result to output the alignment.
Definition: align_config_output.hpp:168
constexpr output_alignment & operator=(output_alignment const &)=default
Defaulted.
constexpr output_alignment()=default
Defaulted.
constexpr output_alignment(output_alignment const &)=default
Defaulted.
constexpr output_alignment & operator=(output_alignment &&)=default
Defaulted.
constexpr output_alignment(output_alignment &&)=default
Defaulted.
Configures the alignment result to output the begin positions.
Definition: align_config_output.hpp:129
constexpr output_begin_position & operator=(output_begin_position &&)=default
Defaulted.
constexpr output_begin_position()=default
Defaulted.
constexpr output_begin_position & operator=(output_begin_position const &)=default
Defaulted.
constexpr output_begin_position(output_begin_position &&)=default
Defaulted.
constexpr output_begin_position(output_begin_position const &)=default
Defaulted.
Configures the alignment result to output the end position.
Definition: align_config_output.hpp:86
constexpr output_end_position(output_end_position const &)=default
Defaulted.
constexpr output_end_position & operator=(output_end_position const &)=default
Defaulted.
constexpr output_end_position(output_end_position &&)=default
Defaulted.
constexpr output_end_position()=default
Defaulted.
constexpr output_end_position & operator=(output_end_position &&)=default
Defaulted.
Configures the alignment result to output the score.
Definition: align_config_output.hpp:43
constexpr output_score & operator=(output_score const &)=default
Defaulted.
constexpr output_score()=default
Defaulted.
constexpr output_score(output_score const &)=default
Defaulted.
constexpr output_score(output_score &&)=default
Defaulted.
constexpr output_score & operator=(output_score &&)=default
Defaulted.
Configures the alignment result to output the id of the first sequence.
Definition: align_config_output.hpp:207
constexpr output_sequence1_id(output_sequence1_id const &)=default
Defaulted.
constexpr output_sequence1_id()=default
Defaulted.
constexpr output_sequence1_id & operator=(output_sequence1_id const &)=default
Defaulted.
constexpr output_sequence1_id & operator=(output_sequence1_id &&)=default
Defaulted.
constexpr output_sequence1_id(output_sequence1_id &&)=default
Defaulted.
Configures the alignment result to output the id of the second sequence.
Definition: align_config_output.hpp:246
constexpr output_sequence2_id & operator=(output_sequence2_id const &)=default
Defaulted.
constexpr output_sequence2_id(output_sequence2_id &&)=default
Defaulted.
constexpr output_sequence2_id(output_sequence2_id const &)=default
Defaulted.
constexpr output_sequence2_id & operator=(output_sequence2_id &&)=default
Defaulted.
constexpr output_sequence2_id()=default
Defaulted.
Provides concepts for core language types and relations that don't have concepts in C++20 (yet).
A special sub namespace for the alignment configurations.
Definition: align_config_band.hpp:23
Provides seqan3::pipeable_config_element.