|
| std::vector< int64_t > & | bin_indices_of_ibf (size_t const idx) |
| | Returns a vector containing user bin indices for each bin in the idxth IBF.
|
| |
|
int64_t | filename_index (size_t const ibf_idx, size_t const bin_idx) const |
| | Returns the filename index of the ibf_idxth IBF for bin bin_idx.
|
| |
| std::string & | filename_of_user_bin (size_t const idx) |
| | Returns the filename of the idxth user bin.
|
| |
|
size_t | num_user_bins () const noexcept |
| | Returns the number of managed user bins.
|
| |
|
auto | operator[] (size_t const ibf_idx) const |
| | Returns a view over the user bin filenames for the ibf_idxth IBF. An empty string is returned for merged bins.
|
| |
|
std::string const & | operator[] (std::pair< size_t, size_t > const &index_pair) const |
| | For a pair (a,b), returns a const reference to the filename of the user bin at IBF a, bin b.
|
| |
| template<typename archive_t > |
| void | serialize (archive_t &archive) |
| | Serialisation support function.
|
| |
|
void | set_ibf_count (size_t const size) |
| | Changes the number of managed IBFs.
|
| |
|
void | set_user_bin_count (size_t const size) |
| | Changes the number of managed user bins.
|
| |
| template<typename stream_t > |
| void | write_filenames (stream_t &out_stream) const |
| | Writes all filenames to a stream. Index and filename are tab-separated.
|
| |
template<seqan3::data_layout data_layout_mode_ = seqan3::data_layout::uncompressed>
class raptor::hierarchical_interleaved_bloom_filter< data_layout_mode_ >::user_bins
Bookkeeping for user and technical bins.
template<seqan3::data_layout data_layout_mode_ = seqan3::data_layout::uncompressed>
Stores for each bin in each IBF of the HIBF the ID of the filename.
Assume we look up a bin b in IBF i, i.e. ibf_bin_to_filename_position[i][b]. If -1 is returned, bin b is a merged bin, and there is no filename, we need to look into the lower level IBF. Otherwise, the returned value j can be used to access the corresponding filename user_bin_filenames[j].