|
Raptor 4.0.0-rc.1
A fast and space-efficient pre-filter
|
Provides raptor::delete_user_bins. More...
Include dependency graph for delete_user_bins.hpp:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Functions | |
| void | raptor::delete_user_bins (update_arguments const &arguments, raptor_index< index_structure::hibf > &index) |
Deletes the user bins listed in arguments.user_bins_to_delete from index. | |
Provides raptor::delete_user_bins.
| void raptor::delete_user_bins | ( | update_arguments const & | arguments, |
| raptor_index< index_structure::hibf > & | index ) |
Deletes the user bins listed in arguments.user_bins_to_delete from index.
| [in] | arguments | The update arguments. |
| [in,out] | index | The index to delete from. |
The technical bins holding a deleted user bin are cleared and marked as seqan::hibf::bin_kind::deleted, and their occupancy is reset. The freed technical bins are reused by a subsequent raptor::insert_user_bin.
An IBF whose bins all became empty is additionally cleared in its parent's merged bin, and the subtree it roots is retired, see raptor::detail::retire_ibf: their bit vectors are released, but their slots in ibf_vector are kept so that the IBF indices stored throughout the index stay valid.
User bin IDs are not reassigned, hence the IDs of the remaining user bins stay valid. A deleted user bin keeps its entry in the bin path until a full rebuild drops it and renumbers the remaining user bins, see raptor::insert_user_bin.
Here is the call graph for this function:
Here is the caller graph for this function: