HIBF 1.0.0-rc.1
Loading...
Searching...
No Matches
seqan::hibf::layout::data_store Struct Reference

Contains information used for the layout. More...

#include <hibf/layout/data_store.hpp>

Classes

struct  previous_level
 Stores information of the previous level of a given IBF. More...
 

Public Attributes

References to global instances of the HIBF.
double false_positive_rate {}
 The desired maximum false positive rate of the resulting index.
 
layout * hibf_layout
 The layout that is built by layout::hierarchical_binning.
 
std::vector< size_t > const * kmer_counts {}
 The kmer counts associated with the above files used to layout user bin into technical bins.
 
std::vector< sketch::hyperloglog > const * sketches {}
 The hyperloglog sketches of all input files to estimate their size and similarities.
 
Local Storage one IBF in the HIBF.

These member variables change on each IBF of the HIBF s.t. the current IBF can be constructed from the current subset of data. The same data is also used for the top level IBF that holds all the data.

std::vector< size_t > positions
 The input is sorted and rearranged. To keep track without changing the input we store the positions.
 
std::vector< double > fpr_correction {}
 The false positive correction based on fp_rate, num_hash_functions and requested_max_tb.
 
previous_level previous {}
 Information about previous levels of the IBF if the algorithm is called recursively.
 
std::vector< uint64_t > union_estimates {}
 Matrix of estimates of merged bin cardinalites.
 
bool user_bins_arranged {false}
 The input is sorted and rearranged. To keep track without changing the input we store the positions.
 
concurrent_timer union_estimation_timer {}
 Tracks the time the algorithm spends on estimating the union of user bins (merged bins).
 
concurrent_timer rearrangement_timer {}
 Tracks the time the algorithm spends on rearranging user bins (merged bins).
 

Detailed Description

Contains information used for the layout.

Member Data Documentation

◆ positions

std::vector<size_t> seqan::hibf::layout::data_store::positions
Initial value:
= [this]()
{
ps.resize(this->kmer_counts->size());
std::iota(ps.begin(), ps.end(), 0);
return ps;
}()
T begin(T... args)
T end(T... args)
T iota(T... args)
T resize(T... args)
T size(T... args)
std::vector< size_t > const * kmer_counts
The kmer counts associated with the above files used to layout user bin into technical bins.
Definition data_store.hpp:54

The input is sorted and rearranged. To keep track without changing the input we store the positions.


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