SeqAn3  3.0.3
The Modern C++ library for sequence analysis.
seqan3::alignment_coordinate Class Reference

Represents the begin/end of the pairwise alignment in the respective sequences. More...

#include <seqan3/alignment/matrix/alignment_coordinate.hpp>

+ Inheritance diagram for seqan3::alignment_coordinate:

Public Member Functions

Constructors, destructor and assignment
constexpr alignment_coordinate ()=default
 Defaulted.
 
constexpr alignment_coordinate (alignment_coordinate const &)=default
 Defaulted.
 
constexpr alignment_coordinate (alignment_coordinate &&)=default
 Defaulted.
 
constexpr alignment_coordinateoperator= (alignment_coordinate const &)=default
 Defaulted.
 
constexpr alignment_coordinateoperator= (alignment_coordinate &&)=default
 Defaulted.
 
 ~alignment_coordinate ()=default
 Defaulted.
 
constexpr alignment_coordinate (base_t const &base)
 Constructs from the seqan3::detail::advanceable_alignment_coordinate base class.
 
constexpr alignment_coordinate (base_t &&base)
 Constructs from the seqan3::detail::advanceable_alignment_coordinate base class.
 
- Public Member Functions inherited from seqan3::detail::advanceable_alignment_coordinate< detail::advanceable_alignment_coordinate_state::none >
constexpr advanceable_alignment_coordinate () noexcept=default
 
constexpr advanceable_alignment_coordinate (advanceable_alignment_coordinate const &) noexcept=default
 Defaulted.
 
constexpr advanceable_alignment_coordinate (advanceable_alignment_coordinate &&) noexcept=default
 
constexpr advanceable_alignment_coordinate (advanceable_alignment_coordinate< other_state > const &other)
 Copy-constructs from another advanceable_alignment_coordinate with a different policy.
 
constexpr advanceable_alignment_coordinate (advanceable_alignment_coordinate< other_state > &&other)
 Move-constructs from another advanceable_alignment_coordinate with a different policy.
 
constexpr advanceable_alignment_coordinate (column_index_type< size_t > const c_idx, row_index_type< size_t > const r_idx) noexcept
 Construction from the respective column and row indices. More...
 
constexpr advanceable_alignment_coordinateoperator= (advanceable_alignment_coordinate const &) noexcept=default
 Defaulted.
 
constexpr advanceable_alignment_coordinateoperator= (advanceable_alignment_coordinate &&) noexcept=default
 Defaulted.
 
 ~advanceable_alignment_coordinate () noexcept=default
 Defaulted.
 
constexpr advanceable_alignment_coordinateoperator++ () noexcept
 Increments the coordinate depending on the set policy by one. More...
 
constexpr advanceable_alignment_coordinate operator++ (int) noexcept
 Post-increments the coordinate depending on the set policy by one. More...
 
constexpr advanceable_alignment_coordinateoperator-- () noexcept
 Decrements the coordinate depending on the set policy by one. More...
 
constexpr advanceable_alignment_coordinate operator-- (int) noexcept
 Post-decrements the coordinate depending on the set policy by one. More...
 
constexpr advanceable_alignment_coordinateoperator+= (difference_type const offset) noexcept
 Returns the coordinate which is advanced depending on the set policy by offset. More...
 
constexpr advanceable_alignment_coordinateoperator-= (difference_type const offset) noexcept
 Returns the coordinate which is advanced depending on the set policy by -offset. More...
 
constexpr advanceable_alignment_coordinate operator+ (difference_type const offset) const noexcept
 Returns a new coordinate which is advanced depending on the set policy by offset. More...
 
constexpr advanceable_alignment_coordinate operator- (difference_type const offset) const noexcept
 Returns a new coordinate which is advanced depending on the set policy by -offset. More...
 
constexpr difference_type operator- (advanceable_alignment_coordinate const &other) const noexcept
 Returns the difference of this and another coordinate depending on the set policy. More...
 

Public Attributes

size_t first
 The begin/end position of the alignment in the first sequence.
 
size_t second
 The begin/end position of the alignment in the second sequence.
 
- Public Attributes inherited from seqan3::detail::advanceable_alignment_coordinate< detail::advanceable_alignment_coordinate_state::none >
size_t first
 The front/back position of the alignment in the first sequence.
 
size_t second
 The front/back position of the alignment in the second sequence.
 

Private Types

using base_t = detail::advanceable_alignment_coordinate< detail::advanceable_alignment_coordinate_state::none >
 The type of the base class.
 

Private Member Functions

constexpr operator detail::matrix_coordinate () const
 Implicit conversion to seqan3::detail::matrix_coordinate.
 

Additional Inherited Members

- Public Types inherited from seqan3::detail::advanceable_alignment_coordinate< detail::advanceable_alignment_coordinate_state::none >
using difference_type = std::make_signed_t< size_t >
 Defines the difference type to model the std::weakly_incrementable concept.
 

Detailed Description

Represents the begin/end of the pairwise alignment in the respective sequences.

This class only gives access to the respective positions of the sequences and is meant for the user interface. The additional complexity of an advanceable coordinate using the seqan3::detail::advanceable_alignment_coordinate is only necessary for the implementation of the pairwise alignment algorithm. Within in the algorithm the coordinate is used in combination with a seqan3::views::iota to keep track of the current position within the alignment matrix. For the user, however, this interface adds no benefit as they are only interested in the front/back coordinates for the respective alignment.


The documentation for this class was generated from the following file: