28 #ifndef BERSERK_RESOURCEMANAGER_HPP
29 #define BERSERK_RESOURCEMANAGER_HPP
37 #include <unordered_map>
98 std::vector<std::shared_ptr<ResourceImporter>> mImporters;
100 mutable std::recursive_mutex mMutex;
#define BRK_NS_END
Definition: Config.hpp:48
#define BRK_API
Definition: Config.hpp:32
Base class responsible for importing a specific resource type.
Definition: ResourceImporter.hpp:68
Main engine resource management class.
Definition: ResourceManager.hpp:59
BRK_API ResourceManager()
Definition: ResourceManager.cpp:38
BRK_API void RegisterImporter(std::shared_ptr< ResourceImporter > importer)
Register new resource importer.
Definition: ResourceManager.cpp:82
BRK_API Ref< Resource > Import(const String &filepath, const Ref< ResourceImportOptions > &options, const UUID &uuid=UUID::Empty())
Import resource at specified file location.
Definition: ResourceManager.cpp:45
BRK_API bool CanImport(const String &filepath) const
Check if can import resource.
Definition: ResourceManager.cpp:88
BRK_API ~ResourceManager()=default
Utf-8 encoded std based default string class.
16-bytes universally unique identifier
Definition: UUID.hpp:48
static BRK_API UUID Empty()
Definition: UUID.cpp:148
Definition: GLDevice.cpp:46