|
37 | 37 |
|
38 | 38 | #include <bio/alphabet/aminoacid/aa27.hpp>
|
39 | 39 | #include <bio/io/seq/reader.hpp>
|
| 40 | +#include <bio/ranges/container/concatenated_sequences.hpp> |
40 | 41 | #include <bio/ranges/views/complement.hpp>
|
41 | 42 | #include <bio/ranges/views/translate_join.hpp>
|
42 | 43 | #if __cpp_lib_ranges <= 202106L
|
@@ -273,12 +274,26 @@ void loadDbIndexFromDisk(
|
273 | 274 | globalHolder.transSbjSeqs = globalHolder.indexFile.seqs | sbjTransView<c_origSbjAlph, c_transAlph, c_redAlph>;
|
274 | 275 | globalHolder.redSbjSeqs = globalHolder.transSbjSeqs | redView<c_transAlph, c_redAlph>;
|
275 | 276 |
|
| 277 | + size_t searchSpaceSize = 0ull; |
| 278 | + |
| 279 | + if (options.verbosity == 2) |
| 280 | + { |
| 281 | + searchSpaceSize = bio::meta::overloaded{[]<typename T>(bio::ranges::concatenated_sequences<T> const & seqs) |
| 282 | + { return seqs.concat_size(); }, |
| 283 | + [](auto const & seqs) |
| 284 | + { |
| 285 | + auto v = seqs | std::views::transform(std::ranges::size); |
| 286 | + return std::reduce(v.begin(), v.end(), 0ull); |
| 287 | + }}(globalHolder.transSbjSeqs); |
| 288 | + } |
| 289 | + |
276 | 290 | double finish = sysTime() - start;
|
277 | 291 | myPrint(options, 1, " done.\n");
|
278 | 292 |
|
279 | 293 | myPrint(options, 2, " # original subjects: ", globalHolder.indexFile.seqs.size(), "\n");
|
280 | 294 | myPrint(options, 2, " # translated subjects: ", globalHolder.transSbjSeqs.size(), "\n");
|
281 | 295 | myPrint(options, 2, " # reduced subjects: ", globalHolder.redSbjSeqs.size(), "\n");
|
| 296 | + myPrint(options, 2, " size of search space: ", searchSpaceSize, "\n"); |
282 | 297 | bool const indexHasSTaxIDs = globalHolder.indexFile.sTaxIds.size() == globalHolder.indexFile.seqs.size();
|
283 | 298 | myPrint(options, 2, " has taxonomic IDs: ", indexHasSTaxIDs, "\n");
|
284 | 299 | bool const indexHasTaxTree = globalHolder.indexFile.taxonNames.size() >= globalHolder.indexFile.seqs.size();
|
|
0 commit comments