8#ifndef MALENA_RESOURCEMANAGER_H
9#define MALENA_RESOURCEMANAGER_H
13#include <unordered_map>
41 bool (*loadFunction)(Resource&,
const std::string&) = &
fileLoader>
55 template<
typename Asset>
56 static const Resource&
get(
const Asset& asset);
68 template<
typename Asset>
79 template<
typename Asset>
80 static std::unordered_map<Asset, Resource, EnumClassHash>& cache();
85#include "../../../src/Resources/ResourceManager.tpp"
Base class for all Malena manifests.
Generic manifest-driven resource cache.
static void unload(Asset asset)
Remove a resource from the cache.
static const Resource & get(const Asset &asset)
Retrieve the cached resource for an asset enum value.
bool fileLoader(Resource &r, const std::string &path)