diff --git a/src/plugins/streamers/lefdef/db_plugin/dbLEFDEFImporter.cc b/src/plugins/streamers/lefdef/db_plugin/dbLEFDEFImporter.cc index 8776f6827..3059105da 100644 --- a/src/plugins/streamers/lefdef/db_plugin/dbLEFDEFImporter.cc +++ b/src/plugins/streamers/lefdef/db_plugin/dbLEFDEFImporter.cc @@ -1082,9 +1082,12 @@ LEFDEFReaderState::lef_importer () } void -LEFDEFReaderState::read_lef (tl::InputStream &stream, db::Layout &layout) +LEFDEFReaderState::read_lef (const std::string &fn, db::Layout &layout) { + tl::InputStream stream (fn); lef_importer ().read (stream, layout, *this); + + m_lef_files_read.insert (fn); } void diff --git a/src/plugins/streamers/lefdef/db_plugin/dbLEFDEFImporter.h b/src/plugins/streamers/lefdef/db_plugin/dbLEFDEFImporter.h index fc75c5c63..ddb90415e 100644 --- a/src/plugins/streamers/lefdef/db_plugin/dbLEFDEFImporter.h +++ b/src/plugins/streamers/lefdef/db_plugin/dbLEFDEFImporter.h @@ -1413,7 +1413,7 @@ public: * * Multiple LEF files can be read. */ - void read_lef (tl::InputStream &stream, db::Layout &layout); + void read_lef (const std::string &fn, db::Layout &layout); /** * @brief Provided for test purposes @@ -1428,15 +1428,6 @@ public: return m_lef_files_read.find (fn) != m_lef_files_read.end (); } - /** - * @brief Registers a LEF file - * After registration, the same file will report "already_read" - */ - void register_lef_file (const std::string &fn) - { - m_lef_files_read.insert (fn); - } - /** * @brief Gets the stored macro layouts */ diff --git a/src/plugins/streamers/lefdef/db_plugin/dbLEFDEFPlugin.cc b/src/plugins/streamers/lefdef/db_plugin/dbLEFDEFPlugin.cc index 7dad8a35e..e4e7dfb80 100644 --- a/src/plugins/streamers/lefdef/db_plugin/dbLEFDEFPlugin.cc +++ b/src/plugins/streamers/lefdef/db_plugin/dbLEFDEFPlugin.cc @@ -187,11 +187,8 @@ LEFDEFReader::read_lefdef (db::Layout &layout, const db::LoadLayoutOptions &opti tl::SelfTimer timer (tl::verbosity () >= 21, tl::to_string (tr ("Reading LEF file: ")) + *lp); - tl::InputStream lef_stream (norm_lp); tl::log << tl::to_string (tr ("Reading")) << " " << *lp; - state->read_lef (lef_stream, layout); - - state->register_lef_file (norm_lp); + state->read_lef (norm_lp, layout); } @@ -220,11 +217,8 @@ LEFDEFReader::read_lefdef (db::Layout &layout, const db::LoadLayoutOptions &opti tl::SelfTimer timer (tl::verbosity () >= 21, tl::to_string (tr ("Reading LEF file: ")) + lp); - tl::InputStream lef_stream (norm_lp); tl::log << tl::to_string (tr ("Reading")) << " " << lp; - state->read_lef (lef_stream, layout); - - state->register_lef_file (norm_lp); + state->read_lef (norm_lp, layout); } diff --git a/src/plugins/streamers/lefdef/unit_tests/dbLEFDEFImportTests.cc b/src/plugins/streamers/lefdef/unit_tests/dbLEFDEFImportTests.cc index a7448f1e7..9ccb295a4 100644 --- a/src/plugins/streamers/lefdef/unit_tests/dbLEFDEFImportTests.cc +++ b/src/plugins/streamers/lefdef/unit_tests/dbLEFDEFImportTests.cc @@ -95,8 +95,7 @@ static db::LayerMap read (db::Layout &layout, const char *lef_dir, const char *f ex.read_word_or_quoted (f); fn += f; - tl::InputStream stream (fn); - ld.read_lef (stream, layout); + ld.read_lef (fn, layout); any_lef = true;