mirror of
https://github.com/MihailRis/voxelcore.git
synced 2026-10-05 02:51:49 +00:00
54 lines
1,009 B
C++
54 lines
1,009 B
C++
#include "Assets.h"
|
|
|
|
#include "graphics/Texture.h"
|
|
#include "graphics/Shader.h"
|
|
#include "graphics/Font.h"
|
|
|
|
Assets::~Assets() {
|
|
for (auto& iter : shaders){
|
|
delete iter.second;
|
|
}
|
|
|
|
for (auto& iter : textures){
|
|
delete iter.second;
|
|
}
|
|
|
|
for (auto& iter : fonts){
|
|
delete iter.second;
|
|
}
|
|
}
|
|
|
|
Texture* Assets::getTexture(std::string name) const {
|
|
auto found = textures.find(name);
|
|
if (found == textures.end())
|
|
return nullptr;
|
|
return found->second;
|
|
}
|
|
|
|
void Assets::store(Texture* texture, std::string name){
|
|
textures[name] = texture;
|
|
}
|
|
|
|
|
|
Shader* Assets::getShader(std::string name) const{
|
|
auto found = shaders.find(name);
|
|
if (found == shaders.end())
|
|
return nullptr;
|
|
return found->second;
|
|
}
|
|
|
|
void Assets::store(Shader* shader, std::string name){
|
|
shaders[name] = shader;
|
|
}
|
|
|
|
|
|
Font* Assets::getFont(std::string name) const {
|
|
auto found = fonts.find(name);
|
|
if (found == fonts.end())
|
|
return nullptr;
|
|
return found->second;
|
|
}
|
|
|
|
void Assets::store(Font* font, std::string name){
|
|
fonts[name] = font;
|
|
}
|