4#include <unordered_map>
11#include "misc/Error.h"
12#include "render/general/resource/GpuResource.h"
13#include "material/TextureHandle.h"
17 class GpuResourceManager;
62 std::variant<std::unique_ptr<TextureHandle>,
Error>
63 getTexture(
const std::string& sPathToResourceRelativeRes);
106 std::variant<std::unique_ptr<TextureHandle>,
Error>
Definition: GpuResourceManager.h:43
Definition: TextureHandle.h:15
Definition: TextureManager.h:20
std::pair< std::recursive_mutex, std::unordered_map< std::string, TextureResource > > mtxTextureResources
Definition: TextureManager.h:113
std::variant< std::unique_ptr< TextureHandle >, Error > loadTextureAndCreateNewTextureHandle(const std::string &sPathToResourceRelativeRes)
Definition: TextureManager.cpp:161
size_t getTextureInMemoryCount()
Definition: TextureManager.cpp:48
~TextureManager()
Definition: TextureManager.cpp:22
GpuResourceManager *const pResourceManager
Definition: TextureManager.h:119
std::string sTextureFormatExtension
Definition: TextureManager.h:116
std::variant< std::unique_ptr< TextureHandle >, Error > getTexture(const std::string &sPathToResourceRelativeRes)
Definition: TextureManager.cpp:55
std::unique_ptr< TextureHandle > createNewTextureHandle(const std::string &sPathToResourceRelativeRes)
Definition: TextureManager.cpp:129
void determineTextureFormatExtension()
Definition: TextureManager.cpp:120
void releaseTextureResourceIfNotUsed(const std::string &sPathToResourceRelativeRes)
Definition: TextureManager.cpp:77
Definition: TextureManager.h:67
std::unique_ptr< GpuResource > pTexture
Definition: TextureManager.h:69
size_t iActiveTextureHandleCount
Definition: TextureManager.h:72