31 std::shared_ptr<Vruta::TaskScheduler> scheduler,
32 std::shared_ptr<Vruta::EventManager> event_manager);
49 [[nodiscard]] std::shared_ptr<Fabric> create_fabric(
float cell_size = 1.0F);
56 [[nodiscard]] std::shared_ptr<Fabric> create_fabric(std::string name,
float cell_size = 1.0F);
61 void remove_fabric(
const std::shared_ptr<Fabric>& fabric);
66 void remove_fabric(std::string_view name);
72 [[nodiscard]] std::shared_ptr<Fabric> get_fabric(std::string_view name)
const;
77 [[nodiscard]]
const std::vector<std::shared_ptr<Fabric>>& all_fabrics()
const;
82 [[nodiscard]]
const std::unordered_map<std::string, std::shared_ptr<Expanse>>&
96 [[nodiscard]] std::shared_ptr<Expanse> create_expanse(
106 [[nodiscard]] std::shared_ptr<Expanse> get_expanse(std::string_view name)
const;
113 void remove_expanse(std::string_view name);
130 std::unordered_map<std::string, std::shared_ptr<Expanse>>
m_expanses;
132 uint32_t m_next_id { 1 };