#pragma once #include "persistence.h" #include "shape.h" #include class AssetFactory : public Persistence::Persistable { public: using Shapes = std::map>; AssetFactory(); [[nodiscard]] static std::shared_ptr loadXML(const std::filesystem::path &); Shapes shapes; private: friend Persistence::SelectionPtrBase, true>; bool persist(Persistence::PersistenceStore & store) override; };