From 80f8b0bed1e8b005455a4ca81b69d469f8c577b4 Mon Sep 17 00:00:00 2001 From: Martin Steinegger Date: Mon, 31 Jul 2023 12:52:05 +0200 Subject: [PATCH] Add check on seqdb to mkrepseqdb --- src/util/mkrepseqdb.cpp | 56 ++++++++++++++++++++++------------------- 1 file changed, 30 insertions(+), 26 deletions(-) diff --git a/src/util/mkrepseqdb.cpp b/src/util/mkrepseqdb.cpp index 0640f359f..579dc923c 100644 --- a/src/util/mkrepseqdb.cpp +++ b/src/util/mkrepseqdb.cpp @@ -100,36 +100,40 @@ int mkrepseqdb(int argc, const char **argv, const Command& command) { FileUtil::symlinkAlias(par.db3, seqsDbSeq + ".0" ); FileUtil::move(seqsDbSeq.c_str(), (seqsDbSeq + ".1").c_str()); - struct DBSuffix { - DBFiles::Files flag; - const char* suffix; - }; + if(Parameters::isEqualDbtype(reader.getDbtype(), Parameters::DBTYPE_AMINO_ACIDS) || + Parameters::isEqualDbtype(reader.getDbtype(), Parameters::DBTYPE_HMM_PROFILE) || + Parameters::isEqualDbtype(reader.getDbtype(), Parameters::DBTYPE_NUCLEOTIDES)) { - const DBSuffix suffices[] = { - { DBFiles::HEADER, "_h" }, - { DBFiles::HEADER_INDEX, "_h.index" }, - { DBFiles::HEADER_DBTYPE, "_h.dbtype" }, - { DBFiles::LOOKUP, ".lookup" }, - { DBFiles::SOURCE, ".source" }, - { DBFiles::TAX_MAPPING, "_mapping" }, - { DBFiles::TAX_NAMES, "_names.dmp" }, - { DBFiles::TAX_NODES, "_nodes.dmp" }, - { DBFiles::TAX_MERGED, "_merged.dmp" }, - { DBFiles::TAX_MERGED, "_taxonomy" }, - }; + struct DBSuffix { + DBFiles::Files flag; + const char *suffix; + }; - for (size_t i = 0; i < ARRAY_SIZE(suffices); ++i) { - std::string file = par.db1 + suffices[i].suffix; - if (suffices[i].flag && FileUtil::fileExists(file.c_str())) { - DBReader::copyDb(file, par.db3 + suffices[i].suffix); + const DBSuffix suffices[] = { + {DBFiles::HEADER, "_h"}, + {DBFiles::HEADER_INDEX, "_h.index"}, + {DBFiles::HEADER_DBTYPE, "_h.dbtype"}, + {DBFiles::LOOKUP, ".lookup"}, + {DBFiles::SOURCE, ".source"}, + {DBFiles::TAX_MAPPING, "_mapping"}, + {DBFiles::TAX_NAMES, "_names.dmp"}, + {DBFiles::TAX_NODES, "_nodes.dmp"}, + {DBFiles::TAX_MERGED, "_merged.dmp"}, + {DBFiles::TAX_MERGED, "_taxonomy"}, + }; + + for (size_t i = 0; i < ARRAY_SIZE(suffices); ++i) { + std::string file = par.db1 + suffices[i].suffix; + if (suffices[i].flag && FileUtil::fileExists(file.c_str())) { + DBReader::copyDb(file, par.db3 + suffices[i].suffix); + } } - } - for (size_t i = 0; i < ARRAY_SIZE(suffices); ++i) { - std::string file = par.db3 + suffices[i].suffix; - if (suffices[i].flag && FileUtil::fileExists(file.c_str())) { - DBReader::aliasDb(file, par.db3 + "_seq" + suffices[i].suffix); + for (size_t i = 0; i < ARRAY_SIZE(suffices); ++i) { + std::string file = par.db3 + suffices[i].suffix; + if (suffices[i].flag && FileUtil::fileExists(file.c_str())) { + DBReader::aliasDb(file, par.db3 + "_seq" + suffices[i].suffix); + } } } - return EXIT_SUCCESS; }