btllib

Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
btllib::MIBloomFilter< T > Class Template Reference

## Public Member Functions
| MIBloomFilter (unsigned hash_num, unsigned kmer_size, sdsl::bit_vector &bv, const std::vector< std::string > &seeds=std::vector< std::string >(0))
| MIBloomFilter (const std::string &filter_file_path)
void | store (std::string const &filter_file_path) const
bool | insert (const uint64_t *hashes, const bool *strand, T val, unsigned max)
bool | insert (const uint64_t *hashes, T value, unsigned max)
void | saturate (const uint64_t *hashes)
std::vector< T > | at (const uint64_t *hashes, bool &saturated, unsigned max_miss=0)
unsigned | at_rank (const uint64_t *hashes, std::vector< uint64_t > &rank_pos, std::vector< bool > &hits, unsigned max_miss) const
bool | at_rank (const uint64_t *hashes, std::vector< uint64_t > &rank_pos) const
std::vector< uint64_t > | get_rank_pos (const uint64_t *hashes) const
uint64_t | get_rank_pos (const uint64_t hash) const
const std::vector< std::vector< unsigned > > & | get_seed_values () const
unsigned | get_kmer_size () const
unsigned | get_hash_num () const
size_t | get_id_counts (std::vector< size_t > &counts) const
size_t | get_id_counts_strand (std::vector< size_t > &counts) const
size_t | get_pop () const
size_t | get_pop_non_zero () const
T | check_values (T max_val) const
size_t | get_pop_saturated () const
size_t | size () const
void | set_data (uint64_t pos, T id)
void | saturate_data (uint64_t pos)
void | set_data_if_empty (uint64_t pos, T id)
std::vector< T > | get_data (const std::vector< uint64_t > &rank_pos) const
T | get_data (uint64_t rank) const
double | calc_frame_probs (std::vector< double > &frame_probs, unsigned allowed_miss)
double | calc_frame_probs_strand (std::vector< double > &frame_probs, unsigned allowed_miss)

## Static Public Member Functions
static double | calc_prob_single_frame (double occupancy, unsigned hash_num, double freq, unsigned allowed_misses)
static double | calc_prob_single (double occupancy, double freq)
static size_t | calc_optimal_size (size_t entries, unsigned hash_num, double occupancy)
static unsigned | insert (sdsl::bit_vector &bv, const uint64_t *hash_values, unsigned hash_num)

## Static Public Attributes
static const T | MASK = 1 << (sizeof(T) * 8 - 1)
static const T | ANTI_MASK = (T)~MASK
static const T | STRAND = 1 << (sizeof(T) * 8 - 2)
static const T | ANTI_STRAND = (T)~STRAND
static const T | ID_MASK = ANTI_STRAND & ANTI_MASK
static const unsigned | BLOCKSIZE = 512

## Member Function Documentation

## ◆ store()

template<typename T >

void btllib::MIBloomFilter< T >::store | ( | std::string const & | filter_file_path | ) | const
| inline

BLOCKSIZE) / 8

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

- include/btllib/mi_bloom_filter.hpp