fastq_to_fasta
A template for creation of SeqAn3 apps, with a FASTQ to FASTA example app.
Public Attributes | List of all members
raptor::hierarchical_interleaved_bloom_filter< data_layout_mode_ >::membership_agent Class Reference

Manages membership queries for the hibf::hierarchical_interleaved_bloom_filter. More...

#include <raptor/hierarchical_interleaved_bloom_filter.hpp>

Public Member Functions

Lookup
template<std::ranges::forward_range value_range_t>
std::vector< int64_t > const & bulk_contains (value_range_t &&values, size_t const threshold) &noexcept
 Determines set membership of given values, and returns the user bin indices of occurrences. More...
 
template<std::ranges::range value_range_t>
std::vector< int64_t > const & bulk_contains (value_range_t &&values, size_t const threshold) &&noexcept=delete
 

Public Attributes

std::vector< int64_t > result_buffer
 Stores the result of bulk_contains(). More...
 

Constructors, destructor and assignment

 membership_agent ()=default
 Defaulted. More...
 
 membership_agent (membership_agent const &)=default
 Defaulted. More...
 
membership_agentoperator= (membership_agent const &)=default
 Defaulted. More...
 
 membership_agent (membership_agent &&)=default
 Defaulted. More...
 
membership_agentoperator= (membership_agent &&)=default
 Defaulted. More...
 
 ~membership_agent ()=default
 Defaulted. More...
 

Detailed Description

template<seqan3::data_layout data_layout_mode_ = seqan3::data_layout::uncompressed>
class raptor::hierarchical_interleaved_bloom_filter< data_layout_mode_ >::membership_agent

Manages membership queries for the hibf::hierarchical_interleaved_bloom_filter.

See also
hibf::hierarchical_interleaved_bloom_filter::user_bins::filename_of_user_bin

In contrast to the [seqan3::interleaved_bloom_filter][1], the result will consist of indices of user bins.

Constructor & Destructor Documentation

◆ membership_agent() [1/3]

template<seqan3::data_layout data_layout_mode_ = seqan3::data_layout::uncompressed>
raptor::hierarchical_interleaved_bloom_filter< data_layout_mode_ >::membership_agent::membership_agent ( )
default

Defaulted.

◆ membership_agent() [2/3]

template<seqan3::data_layout data_layout_mode_ = seqan3::data_layout::uncompressed>
raptor::hierarchical_interleaved_bloom_filter< data_layout_mode_ >::membership_agent::membership_agent ( membership_agent const &  )
default

Defaulted.

◆ membership_agent() [3/3]

template<seqan3::data_layout data_layout_mode_ = seqan3::data_layout::uncompressed>
raptor::hierarchical_interleaved_bloom_filter< data_layout_mode_ >::membership_agent::membership_agent ( membership_agent &&  )
default

Defaulted.

◆ ~membership_agent()

template<seqan3::data_layout data_layout_mode_ = seqan3::data_layout::uncompressed>
raptor::hierarchical_interleaved_bloom_filter< data_layout_mode_ >::membership_agent::~membership_agent ( )
default

Defaulted.

Member Function Documentation

◆ bulk_contains() [1/2]

template<seqan3::data_layout data_layout_mode_ = seqan3::data_layout::uncompressed>
template<std::ranges::range value_range_t>
std::vector< int64_t > const & raptor::hierarchical_interleaved_bloom_filter< data_layout_mode_ >::membership_agent::bulk_contains ( value_range_t &&  values,
size_t const  threshold 
) &&
deletenoexcept

◆ bulk_contains() [2/2]

template<seqan3::data_layout data_layout_mode_ = seqan3::data_layout::uncompressed>
template<std::ranges::forward_range value_range_t>
std::vector< int64_t > const & raptor::hierarchical_interleaved_bloom_filter< data_layout_mode_ >::membership_agent::bulk_contains ( value_range_t &&  values,
size_t const  threshold 
) &
inlinenoexcept

Determines set membership of given values, and returns the user bin indices of occurrences.

Parameters
[in]valuesThe values to process; must model std::ranges::forward_range.
[in]thresholdReport a user bin if there are at least this many hits.
Attention
The result of this function must always be bound via reference, e.g. auto &, to prevent copying.
Sequential calls to this function invalidate the previously returned reference.

Thread safety

Concurrent invocations of this function are not thread safe, please create a hibf::hierarchical_interleaved_bloom_filter::membership_agent for each thread.

◆ operator=() [1/2]

template<seqan3::data_layout data_layout_mode_ = seqan3::data_layout::uncompressed>
membership_agent & raptor::hierarchical_interleaved_bloom_filter< data_layout_mode_ >::membership_agent::operator= ( membership_agent &&  )
default

Defaulted.

◆ operator=() [2/2]

template<seqan3::data_layout data_layout_mode_ = seqan3::data_layout::uncompressed>
membership_agent & raptor::hierarchical_interleaved_bloom_filter< data_layout_mode_ >::membership_agent::operator= ( membership_agent const &  )
default

Defaulted.

Member Data Documentation

◆ result_buffer

template<seqan3::data_layout data_layout_mode_ = seqan3::data_layout::uncompressed>
std::vector<int64_t> raptor::hierarchical_interleaved_bloom_filter< data_layout_mode_ >::membership_agent::result_buffer

Stores the result of bulk_contains().


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