Currently Serializer has only methods to serialize to disk:
void Save(const std::filesystem::path& filepath);
const std::vector<vpiHandle> Restore(const std::filesystem::path& filepath);
There shouldn't be a requirement to write/read to disk just in order to serialize/unserialize data for performance reasons. Disk IO often becomes a performance bottleneck. Many places have killed disks.
I suggest that in-memory serialization/unserialization is also supported:
void Save(std::vector<uint8_t>& data);
const std::vector<vpiHandle> Restore(const std::vector<uint8_t>& data);
This can be useful in case UHDMs are stored and used in memory and there is no need to go to disk other than the requirement of the above interface.
Currently Serializer has only methods to serialize to disk:
There shouldn't be a requirement to write/read to disk just in order to serialize/unserialize data for performance reasons. Disk IO often becomes a performance bottleneck. Many places have killed disks.
I suggest that in-memory serialization/unserialization is also supported:
This can be useful in case UHDMs are stored and used in memory and there is no need to go to disk other than the requirement of the above interface.