35 #include <unordered_map>
40 class ProjectSerializer;
67 std::unique_ptr<Netlist> m_netlist_load;
69 std::string m_proj_file;
70 std::string m_netlist_file;
71 std::string m_gatelib_path;
72 std::unordered_map<std::string, ProjectSerializer*> m_serializer;
73 std::unordered_map<std::string, std::string> m_filename;
75 bool serialize_external(
bool shadow);
89 bool serialize_to_projectfile(
bool shadow)
const;
134 std::string
get_filename(
const std::string& serializer_name);
static ProjectManager * instance()
void set_project_status(ProjectStatus status)
bool create_project_directory(const std::string &path)
void unregister_serializer(const std::string &tagname)
bool serialize_project(Netlist *netlist, bool shadow=false)
std::unique_ptr< Netlist > & get_netlist()
void register_serializer(const std::string &tagname, ProjectSerializer *serializer)
void set_gate_library_path(const std::string &gl_path)
std::string get_filename(const std::string &serializer_name)
ProjectStatus get_project_status() const
void restore_project_file_from_autosave()
static const std::string s_project_file
std::string get_netlist_filename() const
bool open_project(const std::string &path="")
const ProjectDirectory & get_project_directory() const
bool remove_project_directory()
void set_project_directory(const std::string &path)