HIBF 1.0.0-rc.1
All Classes Namespaces Files Functions Variables Typedefs Friends Macros Modules Pages Concepts
prefixes.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 <string_view> // for string_view
8
9#include <hibf/platform.hpp>
10
11namespace seqan::hibf::prefix
12{
13
41constexpr std::string_view meta_header{"@"};
42
43constexpr std::string_view meta_hibf_config_start{"@HIBF_CONFIG"};
44static_assert(meta_hibf_config_start.starts_with(meta_header));
45
46constexpr std::string_view meta_hibf_config_end{"@HIBF_CONFIG_END"};
47static_assert(meta_hibf_config_end.starts_with(meta_header));
48
49constexpr std::string_view layout_header{"#"};
50
51constexpr std::string_view layout_top_level{"TOP_LEVEL_IBF"};
52
53constexpr std::string_view layout_lower_level{"LOWER_LEVEL_IBF"};
54
55constexpr std::string_view layout_fullest_technical_bin_idx{"fullest_technical_bin_idx:"};
56
57constexpr std::string_view layout_first_header_line{"#TOP_LEVEL_IBF"};
58static_assert(layout_first_header_line.starts_with(layout_header));
59static_assert(layout_first_header_line.ends_with(layout_top_level));
60
61constexpr std::string_view layout_column_names{"#USER_BIN_IDX\tTECHNICAL_BIN_INDICES\tNUMBER_OF_TECHNICAL_BINS"};
62static_assert(layout_column_names.starts_with(layout_header));
64
65} // namespace seqan::hibf::prefix
T ends_with(T... args)
Provides platform and dependency checks.
T starts_with(T... args)