Loading...
Searching...
No Matches
seqan3::interleaved_bloom_filter< data_layout_mode_ >::membership_agent_type Class Reference

Manages membership queries for the seqan3::interleaved_bloom_filter. More...

`#include <seqan3/search/dream_index/interleaved_bloom_filter.hpp>`

## Classes

class | binning_bitvector
| A bitvector representing the result of a call to bulk_contains of the seqan3::interleaved_bloom_filter. More...

## Detailed Description

template<data_layout data_layout_mode_ = data_layout::uncompressed>
class seqan3::interleaved_bloom_filter< data_layout_mode_ >::membership_agent_type

Manages membership queries for the seqan3::interleaved_bloom_filter.

Attention
  Calling seqan3::interleaved_bloom_filter::increase_bin_number_to on ibf invalidates the membership_agent.

### Example

// SPDX-FileCopyrightText: 2006-2025 Knut Reinert & Freie Universität Berlin
// SPDX-FileCopyrightText: 2016-2025 Knut Reinert & MPI für molekulare Genetik
// SPDX-License-Identifier: CC0-1.0
#include <seqan3/search/dream_index/interleaved_bloom_filter.hpp>
int main()
{
// Construct an Interleaved Bloom Filter to be used with the membership_agent.
seqan3::interleaved_bloom_filter ibf{seqan3::bin_count{43u},
seqan3::bin_size{8192u},
seqan3::hash_function_count{3}};
// The membership_agent can now be constructed by calling `membership_agent` on the Interleaved Bloom Filter.
auto agent = ibf.membership_agent();
// Calling `increase_bin_number_to` invalidates the agent.
ibf.increase_bin_number_to(seqan3::bin_count{60u});
// So make sure to construct a new membership_agent.
agent = ibf.membership_agent();
}
seqan3::interleaved_bloom_filter
The IBF binning directory. A data structure that efficiently answers set-membership queries for multi...
Definition interleaved_bloom_filter.hpp:98
seqan3::interleaved_bloom_filter::membership_agent
membership_agent_type membership_agent() const
Returns a seqan3::interleaved_bloom_filter::membership_agent_type to be used for lookup.
Definition interleaved_bloom_filter.hpp:401
seqan3::interleaved_bloom_filter::increase_bin_number_to
void increase_bin_number_to(bin_count const new_bins_)
Increases the number of bins stored in the Interleaved Bloom Filter.
Definition interleaved_bloom_filter.hpp:346
interleaved_bloom_filter.hpp
Provides seqan3::interleaved_bloom_filter.
seqan3::bin_count
A strong type that represents the number of bins for the seqan3::interleaved_bloom_filter.
Definition bloom_filter_strong_types.hpp:31
seqan3::bin_size
A strong type that represents the number of bits for each bin in the seqan3::interleaved_bloom_filter...
Definition bloom_filter_strong_types.hpp:38
seqan3::hash_function_count
A strong type that represents the number of hash functions for the seqan3::interleaved_bloom_filter.
Definition bloom_filter_strong_types.hpp:45

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

- interleaved_bloom_filter.hpp

Hide me