|
HAL
|
Typedefs | |
| using | WriterFactory = std::function< std::unique_ptr< GateLibraryWriter >()> |
Functions | |
| void | register_writer (const std::string &name, const WriterFactory &writer_factory, const std::vector< std::string > &supported_file_extensions) |
| void | unregister_writer (const std::string &name) |
| bool | write (const GateLibrary *gate_lib, const std::filesystem::path &file_path) |
The gate library writer manager keeps track of all gate library writers that are available within HAL. It is used to dispatch writing tasks to the respective writers.
| using hal::gate_library_writer_manager::WriterFactory = typedef std::function<std::unique_ptr<GateLibraryWriter>()> |
Definition at line 46 of file gate_library_writer_manager.h.
| NETLIST_API void hal::gate_library_writer_manager::register_writer | ( | const std::string & | name, |
| const WriterFactory & | writer_factory, | ||
| const std::vector< std::string > & | supported_file_extensions | ||
| ) |
Register a new gate library writer for a selection of file types.
If writers for some of the extensions already exist, they remain unchanged and the new parser is not registered at all.
| [in] | name | - The name of the writer. |
| [in] | writer_factory | - A factory function that constructs a new writer instance. |
| [in] | supported_file_extensions | - The file extensions this writer can process. |
Definition at line 40 of file gate_library_writer_manager.cpp.
References log_info, log_warning, name, hal::utils::to_lower(), and hal::utils::trim().
Referenced by hal::plugin_manager::load().
| NETLIST_API void hal::gate_library_writer_manager::unregister_writer | ( | const std::string & | name | ) |
Unregister the specified writer.
| [in] | name | - The name of the writer. |
Definition at line 61 of file gate_library_writer_manager.cpp.
References log_info, and name.
Referenced by hal::plugin_manager::unload().
| NETLIST_API bool hal::gate_library_writer_manager::write | ( | const GateLibrary * | gate_lib, |
| const std::filesystem::path & | file_path | ||
| ) |
Write the gate library into a file at the given location.
| [in] | gate_lib | - The gate library. |
| [in] | file_path | - The output path. |
Definition at line 77 of file gate_library_writer_manager.cpp.
References hal::GateLibrary::get_name(), log_error, and log_info.
Referenced by hal::gate_library_manager::save().