Struct Manager

Inheritance Relationships

Base Types

Struct Documentation

struct Manager : public CE::Assets::Cache::Store<const CE::Rendering::Resources::Material>, public CE::State::Singleton<Manager>

Declaration: final

Strongly retains immutable material recipes and their pipeline generations.

A builder owns the explicit backend mappings and bootstrap choices. Build the complete candidate before publishing; failed reload leaves the old recipe. Invoke synchronously on the active provider/loading owner, outside cache locks. Builder captures must survive the call; its external side effects are not rolled back.

Public Types

using Builder = std::function<std::shared_ptr<const CE::Rendering::Resources::Material>(CE::Rendering::Resources::Provider&)>

Public Functions

Manager() = default
~Manager() override = default
void load(const std::filesystem::path &key, CE::Rendering::Resources::Provider &provider, const Builder &builder)
void reload(const std::filesystem::path &key, CE::Rendering::Resources::Provider &provider, const Builder &builder)