Raptor
4.0.0-rc.1
A fast and space-efficient pre-filter
Loading...
Searching...
No Matches
index_metadata.hpp
Go to the documentation of this file.
1
// SPDX-FileCopyrightText: 2006-2026 Knut Reinert & Freie Universität Berlin
2
// SPDX-FileCopyrightText: 2016-2026 Knut Reinert & MPI für molekulare Genetik
3
// SPDX-License-Identifier: BSD-3-Clause
4
10
#pragma once
11
12
#include <
cstddef
>
13
#include <
filesystem
>
14
#include <
optional
>
15
#include <
vector
>
16
17
#include <
raptor/argument_parsing/inspect_arguments.hpp
>
18
#include <
raptor/index.hpp
>
19
20
namespace
raptor::detail
21
{
22
24
struct
ibf_metadata
25
{
27
size_t
id
{};
29
size_t
level
{};
31
std::optional<seqan::hibf::hierarchical_interleaved_bloom_filter::previous_ibf_id_pair>
parent
{};
33
size_t
technical_bins
{};
35
size_t
capacity
{};
37
size_t
merged_bins
{};
39
size_t
deleted_bins
{};
41
size_t
bin_size
{};
42
size_t
hash_function_count{};
44
size_t
bit_size
{};
45
};
46
48
struct
structure_metadata
49
{
51
std::vector<ibf_metadata>
ibfs
{};
53
std::vector<size_t>
retired_ibfs
{};
55
std::vector<size_t>
deleted_user_bins
{};
57
size_t
levels
{};
58
};
59
61
struct
index_metadata
62
{
64
std::filesystem::path
index_file
{};
66
size_t
size_in_bytes
{};
73
raptor_index<index_structure::hibf>
parameters
{};
75
std::optional<structure_metadata>
structure
{};
76
};
77
84
index_metadata read_index_metadata(
inspect_arguments
const
& arguments);
85
86
}
// namespace raptor::detail
raptor::raptor_index
Definition
index.hpp:48
cstddef
filesystem
index.hpp
Provides raptor::raptor_index.
inspect_arguments.hpp
Provides raptor::inspect_arguments.
optional
std::filesystem::path
raptor::detail::ibf_metadata
The structure of a single IBF.
Definition
index_metadata.hpp:25
raptor::detail::ibf_metadata::parent
std::optional< seqan::hibf::hierarchical_interleaved_bloom_filter::previous_ibf_id_pair > parent
The IBF and the merged bin this IBF is the child of. Not set for a top-level IBF.
Definition
index_metadata.hpp:31
raptor::detail::ibf_metadata::bit_size
size_t bit_size
The size of the IBF in bits.
Definition
index_metadata.hpp:44
raptor::detail::ibf_metadata::technical_bins
size_t technical_bins
The number of technical bins in use, i.e. bin_count().
Definition
index_metadata.hpp:33
raptor::detail::ibf_metadata::bin_size
size_t bin_size
The size of a single technical bin in bits.
Definition
index_metadata.hpp:41
raptor::detail::ibf_metadata::deleted_bins
size_t deleted_bins
The number of technical bins freed by deleting a user bin.
Definition
index_metadata.hpp:39
raptor::detail::ibf_metadata::capacity
size_t capacity
The number of technical bins the IBF can hold without being resized.
Definition
index_metadata.hpp:35
raptor::detail::ibf_metadata::merged_bins
size_t merged_bins
The number of merged bins, i.e. bins pointing to a lower-level IBF.
Definition
index_metadata.hpp:37
raptor::detail::ibf_metadata::level
size_t level
The depth of the IBF in the HIBF. 0 for the top-level IBF and for every part of an IBF index.
Definition
index_metadata.hpp:29
raptor::detail::index_metadata
The metadata raptor inspect reports.
Definition
index_metadata.hpp:62
raptor::detail::index_metadata::parameters
raptor_index< index_structure::hibf > parameters
The parameters of the index, read by raptor::raptor_index::load_parameters.
Definition
index_metadata.hpp:73
raptor::detail::index_metadata::structure
std::optional< structure_metadata > structure
Only set with --detailed.
Definition
index_metadata.hpp:75
raptor::detail::index_metadata::size_in_bytes
size_t size_in_bytes
The combined size of all files of the index.
Definition
index_metadata.hpp:66
raptor::detail::index_metadata::index_file
std::filesystem::path index_file
The path as passed to --index.
Definition
index_metadata.hpp:64
raptor::detail::structure_metadata
The structure of an index. Requires loading the whole index.
Definition
index_metadata.hpp:49
raptor::detail::structure_metadata::deleted_user_bins
std::vector< size_t > deleted_user_bins
The user bins no technical bin refers to anymore. Always empty for an IBF.
Definition
index_metadata.hpp:55
raptor::detail::structure_metadata::levels
size_t levels
The number of levels, i.e. one more than the largest raptor::detail::ibf_metadata::level.
Definition
index_metadata.hpp:57
raptor::detail::structure_metadata::ibfs
std::vector< ibf_metadata > ibfs
Every IBF that is not retired, in ascending order of raptor::detail::ibf_metadata::id.
Definition
index_metadata.hpp:51
raptor::detail::structure_metadata::retired_ibfs
std::vector< size_t > retired_ibfs
The IBFs retired by an update. Their slots are kept, but they hold no data. Always empty for an IBF.
Definition
index_metadata.hpp:53
raptor::inspect_arguments
Definition
inspect_arguments.hpp:26
vector
Hide me
Version:
src
inspect
index_metadata.hpp
Generated on Sat Oct 31 2026 18:12:17 for Raptor by
1.10.0