HAL
hal::GroupingSerializer Class Reference

#include <grouping_serializer.h>

Inheritance diagram for hal::GroupingSerializer:
Inheritance graph
Collaboration diagram for hal::GroupingSerializer:
Collaboration graph

Public Member Functions

 GroupingSerializer ()
 
std::string serialize (Netlist *netlist, const std::filesystem::path &savedir, bool isAutosave) override
 
void deserialize (Netlist *netlist, const std::filesystem::path &loaddir) override
 
- Public Member Functions inherited from hal::ProjectSerializer
 ProjectSerializer (const std::string &name)
 
virtual ~ProjectSerializer ()
 

Additional Inherited Members

- Protected Attributes inherited from hal::ProjectSerializer
std::string m_name
 

Detailed Description

Definition at line 34 of file grouping_serializer.h.

Constructor & Destructor Documentation

◆ GroupingSerializer()

hal::GroupingSerializer::GroupingSerializer ( )

Definition at line 19 of file grouping_serializer.cpp.

Member Function Documentation

◆ deserialize()

void hal::GroupingSerializer::deserialize ( Netlist netlist,
const std::filesystem::path &  loaddir 
)
overridevirtual

Deserialize elements of class Grouping from file. File will be queried from ProjectManager

Parameters
[in]netlistTarget netlist to restore groupings
[in]loaddirProject directory to load file from

Implements hal::ProjectSerializer.

Definition at line 69 of file grouping_serializer.cpp.

References hal::Grouping::assign_gate(), hal::Grouping::assign_module(), hal::Grouping::assign_net(), hal::ProjectManager::get_filename(), hal::ProjectManager::instance(), log_error, hal::ProjectSerializer::m_name, and test_multiple::netlist.

◆ serialize()

std::string hal::GroupingSerializer::serialize ( Netlist netlist,
const std::filesystem::path &  savedir,
bool  isAutosave 
)
overridevirtual

Serialize elements of class Grouping to separate file

Parameters
[in]netlistNetlist that might contain groupings
[in]savedirProject directory to save to
[in]isAutosaveTrue if serialize call was issued from autosave, false otherwise
Returns

Implements hal::ProjectSerializer.

Definition at line 23 of file grouping_serializer.cpp.

References hal::JsonWriteObject::add_array(), hal::JsonWriteArray::add_object(), hal::JsonWriteComplex::close(), test_plugin::g, test::n, test_multiple::netlist, and hal::JsonWriteDocument::serialize().


The documentation for this class was generated from the following files: