22 template <u
int8_t nbr_blocks>
38 constexpr uint8_t blocks() const noexcept
59 uint8_t blocks() const noexcept
66 template <u
int8_t nbr_searches, u
int8_t nbr_blocks>
80 template <u
int8_t min_error, u
int8_t max_error>
81 inline int constexpr optimum_search_scheme;
86 inline search_scheme_type<1, 1> constexpr optimum_search_scheme<0, 0>
92 inline search_scheme_type<2, 2> constexpr optimum_search_scheme<0, 1>
94 {{1, 2}, {0, 0}, {0, 1}},
95 {{2, 1}, {0, 1}, {0, 1}}
99 inline search_scheme_type<2, 2> constexpr optimum_search_scheme<1, 1>
101 {{1, 2}, {0, 1}, {0, 1}},
102 {{2, 1}, {0, 1}, {0, 1}}
106 inline search_scheme_type<3, 4> constexpr optimum_search_scheme<0, 2>
108 {{1, 2, 3, 4}, {0, 0, 1, 1}, {0, 0, 2, 2}},
109 {{3, 2, 1, 4}, {0, 0, 0, 0}, {0, 1, 1, 2}},
110 {{4, 3, 2, 1}, {0, 0, 0, 2}, {0, 1, 2, 2}}
114 inline search_scheme_type<3, 4> constexpr optimum_search_scheme<1, 2>
116 {{1, 2, 3, 4}, {0, 0, 0, 1}, {0, 0, 2, 2}},
117 {{3, 2, 1, 4}, {0, 0, 1, 1}, {0, 1, 1, 2}},
118 {{4, 3, 2, 1}, {0, 0, 0, 2}, {0, 1, 2, 2}}
122 inline search_scheme_type<3, 4> constexpr optimum_search_scheme<2, 2>
124 {{4, 3, 2, 1}, {0, 0, 1, 2}, {0, 0, 2, 2}},
125 {{2, 3, 4, 1}, {0, 0, 0, 2}, {0, 1, 1, 2}},
126 {{1, 2, 3, 4}, {0, 0, 0, 2}, {0, 1, 2, 2}}
130 inline search_scheme_type<4, 5> constexpr optimum_search_scheme<0, 3>
133 {{5, 4, 3, 2, 1}, {0, 0, 0, 0, 0}, {0, 0, 3, 3, 3}},
134 {{3, 4, 5, 2, 1}, {0, 0, 1, 1, 1}, {0, 1, 1, 2, 3}},
135 {{2, 3, 4, 5, 1}, {0, 0, 0, 2, 2}, {0, 1, 2, 2, 3}},
136 {{1, 2, 3, 4, 5}, {0, 0, 0, 0, 3}, {0, 2, 2, 3, 3}}
140 inline search_scheme_type<4, 5> constexpr optimum_search_scheme<1, 3>
142 {{5, 4, 3, 2, 1}, {0, 0, 0, 0, 1}, {0, 0, 3, 3, 3}},
143 {{3, 4, 5, 2, 1}, {0, 0, 1, 1, 1}, {0, 1, 1, 2, 3}},
144 {{2, 3, 4, 5, 1}, {0, 0, 0, 2, 2}, {0, 1, 2, 2, 3}},
145 {{1, 2, 3, 4, 5}, {0, 0, 0, 0, 3}, {0, 2, 2, 3, 3}}
149 inline search_scheme_type<4, 5> constexpr optimum_search_scheme<2, 3>
151 {{5, 4, 3, 2, 1}, {0, 0, 0, 0, 2}, {0, 0, 3, 3, 3}},
152 {{3, 4, 5, 2, 1}, {0, 0, 1, 1, 2}, {0, 1, 1, 2, 3}},
153 {{2, 3, 4, 5, 1}, {0, 0, 0, 2, 2}, {0, 1, 2, 2, 3}},
154 {{1, 2, 3, 4, 5}, {0, 0, 0, 0, 3}, {0, 2, 2, 3, 3}}
158 inline search_scheme_type<4, 5> constexpr optimum_search_scheme<3, 3>
160 {{5, 4, 3, 2, 1}, {0, 0, 0, 0, 3}, {0, 0, 3, 3, 3}},
161 {{3, 4, 5, 2, 1}, {0, 0, 1, 1, 3}, {0, 1, 1, 2, 3}},
162 {{2, 3, 4, 5, 1}, {0, 0, 0, 2, 3}, {0, 1, 2, 2, 3}},
163 {{1, 2, 3, 4, 5}, {0, 0, 0, 0, 3}, {0, 2, 2, 3, 3}}
auto search(queries_t &&queries, index_t const &index, configuration_t const &cfg)
Search a query or a range of queries in an index.
Definition: search.hpp:56
Definition: aligned_sequence_concept.hpp:35