@@ -38,35 +38,20 @@ int result2msa(int argc, const char **argv, const Command &command) {
3838 IndexReader *targetHeaderReaderIdx = NULL ;
3939 const bool sameDatabase = (par.db1 .compare (par.db2 ) == 0 ) ? true : false ;
4040
41- if (Parameters::isEqualDbtype (FileUtil::parseDbType (par.db2 .c_str ()), Parameters::DBTYPE_INDEX_DB)) {
42- if (isCA3M == true ) {
43- Debug (Debug::ERROR) << " Cannot use result2msa with indexed target database for CA3M output\n " ;
44- return EXIT_FAILURE;
45- }
46- uint16_t extended = DBReader<unsigned int >::getExtendedDbtype (FileUtil::parseDbType (par.db3 .c_str ()));
47- bool touch = (par.preloadMode != Parameters::PRELOAD_MODE_MMAP);
48- tDbrIdx = new IndexReader (par.db2 , par.threads ,
49- extended & Parameters::DBTYPE_EXTENDED_INDEX_NEED_SRC ? IndexReader::SRC_SEQUENCES : IndexReader::SEQUENCES,
50- (touch) ? (IndexReader::PRELOAD_INDEX | IndexReader::PRELOAD_DATA) : 0 );
51- tDbr = tDbrIdx->sequenceReader ;
52- targetHeaderReaderIdx = new IndexReader (par.db2 , par.threads ,
53- extended & Parameters::DBTYPE_EXTENDED_INDEX_NEED_SRC ? IndexReader::SRC_HEADERS : IndexReader::HEADERS,
54- (touch) ? (IndexReader::PRELOAD_INDEX | IndexReader::PRELOAD_DATA) : 0 );
55- targetHeaderReader = targetHeaderReaderIdx->sequenceReader ;
56- } else {
57- tDbr = new DBReader<unsigned int >(par.db2 .c_str (), par.db2Index .c_str (), par.threads , DBReader<unsigned int >::USE_INDEX | DBReader<unsigned int >::USE_DATA);
58- tDbr->open (DBReader<unsigned int >::NOSORT);
59- if (par.preloadMode != Parameters::PRELOAD_MODE_MMAP) {
60- tDbr->readMmapedDataInMemory ();
61- }
62- if (isCA3M == false || sameDatabase) {
63- targetHeaderReader = new DBReader<unsigned int >(par.hdr2 .c_str (), par.hdr2Index .c_str (), par.threads , DBReader<unsigned int >::USE_INDEX | DBReader<unsigned int >::USE_DATA);
64- targetHeaderReader->open (DBReader<unsigned int >::NOSORT);
65- if (par.preloadMode != Parameters::PRELOAD_MODE_MMAP) {
66- targetHeaderReader->readMmapedDataInMemory ();
67- }
68- }
41+ if (isCA3M == true ) {
42+ Debug (Debug::ERROR) << " Cannot use result2msa with indexed target database for CA3M output\n " ;
43+ return EXIT_FAILURE;
6944 }
45+ uint16_t extended = DBReader<unsigned int >::getExtendedDbtype (FileUtil::parseDbType (par.db3 .c_str ()));
46+ bool touch = (par.preloadMode != Parameters::PRELOAD_MODE_MMAP);
47+ tDbrIdx = new IndexReader (par.db2 , par.threads ,
48+ extended & Parameters::DBTYPE_EXTENDED_INDEX_NEED_SRC ? IndexReader::SRC_SEQUENCES : IndexReader::SEQUENCES,
49+ (touch) ? (IndexReader::PRELOAD_INDEX | IndexReader::PRELOAD_DATA) : 0 );
50+ tDbr = tDbrIdx->sequenceReader ;
51+ targetHeaderReaderIdx = new IndexReader (par.db2 , par.threads ,
52+ extended & Parameters::DBTYPE_EXTENDED_INDEX_NEED_SRC ? IndexReader::SRC_HEADERS : IndexReader::HEADERS,
53+ (touch) ? (IndexReader::PRELOAD_INDEX | IndexReader::PRELOAD_DATA) : 0 );
54+ targetHeaderReader = targetHeaderReaderIdx->sequenceReader ;
7055
7156 DBReader<unsigned int > *qDbr = NULL ;
7257 DBReader<unsigned int > *queryHeaderReader = NULL ;
0 commit comments