diff options
author | Thorbjørn Lindeijer <bjorn@lindeijer.nl> | 2024-03-21 12:19:06 +0100 |
---|---|---|
committer | Thorbjørn Lindeijer <bjorn@lindeijer.nl> | 2024-03-21 21:15:42 +0100 |
commit | 5333d8554be855af7b78cdd47d19e8d31abd47c3 (patch) | |
tree | 394b869a472fa19a354c7392b5cbbc0d6969aa0a /src/resources/resourcemanager.h | |
parent | 7a110c36b58478b633a694ba74a1cb17d237c3df (diff) | |
download | mana-5333d8554be855af7b78cdd47d19e8d31abd47c3.tar.gz mana-5333d8554be855af7b78cdd47d19e8d31abd47c3.tar.bz2 mana-5333d8554be855af7b78cdd47d19e8d31abd47c3.tar.xz mana-5333d8554be855af7b78cdd47d19e8d31abd47c3.zip |
Use std::function in ResourceManager
Simplifies the code a little.
Also use ResourceRef in SubImage to avoid manual reference counting.
Diffstat (limited to 'src/resources/resourcemanager.h')
-rw-r--r-- | src/resources/resourcemanager.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/resources/resourcemanager.h b/src/resources/resourcemanager.h index 2377eea1..b207585f 100644 --- a/src/resources/resourcemanager.h +++ b/src/resources/resourcemanager.h @@ -23,6 +23,7 @@ #define RESOURCE_MANAGER_H #include <ctime> +#include <functional> #include <map> #include <string> #include <vector> @@ -46,7 +47,6 @@ class ResourceManager public: using loader = Resource *(*)(SDL_RWops *); - using generator = Resource *(*)(void *); ResourceManager(); @@ -123,7 +123,8 @@ class ResourceManager * @return A valid resource or <code>NULL</code> if the resource could * not be generated. */ - Resource *get(const std::string &idPath, generator fun, void *data); + Resource *get(const std::string &idPath, + const std::function<Resource *()> &generator); /** * Loads a resource from a file and adds it to the resource map. |