|
SeqAn3 3.4.0-rc.4
The Modern C++ library for sequence analysis.
|
The type returned by seqan3::views::minimiser. More...
#include <seqan3/search/views/minimiser.hpp>
Inheritance diagram for seqan3::detail::minimiser_view< urng1_t, urng2_t >:Classes | |
| class | basic_iterator |
| Iterator for calculating minimisers. More... | |
Public Member Functions | |
Constructors, destructor and assignment | |
| minimiser_view ()=default | |
| Defaulted. | |
| minimiser_view (minimiser_view const &rhs)=default | |
| Defaulted. | |
| minimiser_view (minimiser_view &&rhs)=default | |
| Defaulted. | |
| minimiser_view & | operator= (minimiser_view const &rhs)=default |
| Defaulted. | |
| minimiser_view & | operator= (minimiser_view &&rhs)=default |
| Defaulted. | |
| ~minimiser_view ()=default | |
| Defaulted. | |
| minimiser_view (urng1_t urange1, size_t const window_size) | |
| Construct from a view and a given number of values in one window. | |
| template<typename other_urng1_t > requires (std::ranges::viewable_range<other_urng1_t> && std::constructible_from<urng1_t, std::ranges::ref_view<std::remove_reference_t<other_urng1_t>>>) | |
| minimiser_view (other_urng1_t &&urange1, size_t const window_size) | |
| Construct from a non-view that can be view-wrapped and a given number of values in one window. | |
| minimiser_view (urng1_t urange1, urng2_t urange2, size_t const window_size) | |
| Construct from two views and a given number of values in one window. | |
| template<typename other_urng1_t , typename other_urng2_t > requires (std::ranges::viewable_range<other_urng1_t> && std::constructible_from<urng1_t, std::views::all_t<other_urng1_t>> && std::ranges::viewable_range<other_urng2_t> && std::constructible_from<urng2_t, std::views::all_t<other_urng2_t>>) | |
| minimiser_view (other_urng1_t &&urange1, other_urng2_t &&urange2, size_t const window_size) | |
| Construct from two non-views that can be view-wrapped and a given number of values in one window. | |
Iterators | |
| basic_iterator< false > | begin () |
| Returns an iterator to the first element of the range. | |
| basic_iterator< true > | begin () const |
| Returns an iterator to the first element of the range. | |
| sentinel | end () const |
| Returns an iterator to the element following the last element of the range. | |
Private Types | |
| using | default_urng2_t = std::ranges::empty_view< seqan3::detail::empty_type > |
| The default argument of the second range. | |
| using | sentinel = std::default_sentinel_t |
| The sentinel type of the minimiser_view. | |
Private Attributes | |
| urng1_t | urange1 {} |
| The first underlying range. | |
| urng2_t | urange2 {} |
| The second underlying range. | |
| size_t | window_size {} |
| The number of values in one window. | |
Static Private Attributes | |
| static constexpr bool | const_iterable |
| Whether the given ranges are const_iterable. | |
| static constexpr bool | second_range_is_given = !std::same_as<urng2_t, default_urng2_t> |
| Boolean variable, which is true, when second range is not of empty type. | |
The type returned by seqan3::views::minimiser.
| urng1_t | The type of the underlying range, must model std::ranges::forward_range, the reference type must model std::totally_ordered. The typical use case is that the reference type is the result of seqan3::kmer_hash. |
| urng2_t | The type of the second underlying range, must model std::ranges::forward_range, the reference type must model std::totally_ordered. If only one range is provided this defaults to std::ranges::empty_view. |
See seqan3::views::minimiser for a detailed explanation on minimizers.
|
inlineexplicit |
Construct from a view and a given number of values in one window.
| [in] | urange1 | The input range to process. Must model std::ranges::viewable_range and std::ranges::forward_range. |
| [in] | window_size | The number of values in one window. |
|
inlineexplicit |
Construct from a non-view that can be view-wrapped and a given number of values in one window.
| other_urng1_t | The type of another urange. Must model std::ranges::viewable_range and be constructible from urng1_t. |
| [in] | urange1 | The input range to process. Must model std::ranges::viewable_range and std::ranges::forward_range. |
| [in] | window_size | The number of values in one window. |
|
inlineexplicit |
Construct from two views and a given number of values in one window.
| [in] | urange1 | The first input range to process. Must model std::ranges::viewable_range and std::ranges::forward_range. |
| [in] | urange2 | The second input range to process. Must model std::ranges::viewable_range and std::ranges::forward_range. |
| [in] | window_size | The number of values in one window. |
|
inlineexplicit |
Construct from two non-views that can be view-wrapped and a given number of values in one window.
| other_urng1_t | The type of another urange. Must model std::ranges::viewable_range and be constructible from urng1_t. |
| other_urng2_t | The type of another urange. Must model std::ranges::viewable_range and be constructible from urng2_t. |
| [in] | urange1 | The input range to process. Must model std::ranges::viewable_range and std::ranges::forward_range. |
| [in] | urange2 | The second input range to process. Must model std::ranges::viewable_range and std::ranges::forward_range. |
| [in] | window_size | The number of values in one window. |
|
inline |
Returns an iterator to the first element of the range.
Constant.
Strong exception guarantee.
|
inline |
Returns an iterator to the first element of the range.
Constant.
Strong exception guarantee.
|
inline |
Returns an iterator to the element following the last element of the range.
This element acts as a placeholder; attempting to dereference it results in undefined behaviour.
Constant.
No-throw guarantee.
|
staticconstexprprivate |
Whether the given ranges are const_iterable.