HIBF 1.0.0-rc.1
All Classes Namespaces Files Functions Variables Typedefs Friends Macros Modules Pages Concepts
compute_layout.hpp
1// SPDX-FileCopyrightText: 2006-2025, Knut Reinert & Freie Universität Berlin
2// SPDX-FileCopyrightText: 2016-2025, Knut Reinert & MPI für molekulare Genetik
3// SPDX-License-Identifier: BSD-3-Clause
4
5#pragma once
6
7#include <cstddef> // for size_t
8#include <vector> // for vector
9
10#include <hibf/config.hpp> // for config
11#include <hibf/layout/layout.hpp> // for layout
12#include <hibf/misc/timer.hpp> // for concurrent, timer
13#include <hibf/sketch/hyperloglog.hpp> // for hyperloglog
14
15namespace seqan::hibf::layout
16{
17
29 std::vector<size_t> const & kmer_counts,
30 std::vector<sketch::hyperloglog> const & sketches,
31 std::vector<size_t> && positions,
32 concurrent_timer & union_estimation_timer,
33 concurrent_timer & rearrangement_timer);
34
37 std::vector<size_t> const & kmer_counts,
38 std::vector<sketch::hyperloglog> const & sketches);
39
40} // namespace seqan::hibf::layout
A timer with a thread-safe operator+=().
Definition timer.hpp:155
layout compute_layout(config const &config, std::vector< size_t > const &kmer_counts, std::vector< sketch::hyperloglog > const &sketches, std::vector< size_t > &&positions, concurrent_timer &union_estimation_timer, concurrent_timer &rearrangement_timer)
Computes the layout.
Provides seqan::hibf::sketch::hyperloglog.
The configuration used to build an (H)IBF.
Definition config.hpp:75
The layout.
Definition layout.hpp:22
Provides seqan::hibf::timer.