#ifndef RESOURCEBASE_H #define RESOURCEBASE_H class Texture; class Mesh; class Material; class Shader; class Entity; #include #include #include class ResourceBase { private: std::vector textureNames; std::vector meshNames; std::vector materialNames; std::vector shaderNames; std::vector entityNames; std::unordered_map textures; std::unordered_map meshes; std::unordered_map materials; std::unordered_map shaders; std::unordered_map entities; public: ResourceBase(); ~ResourceBase(); void addTexture(std::string textureName, Texture* myTexture); void addMesh(std::string meshName, Mesh* myMesh); void addMaterial(std::string materialName, Material* myMaterial); void addShader(std::string shaderName, Shader* myShader); void addEntity(std::string entityName, Entity* myEntity); Texture* getTexture(std::string textureName); Mesh* getMesh(std::string meshName); Material* getMaterial(std::string materialName); Shader* getShader(std::string shaderName); Entity* getEntity(std::string entityName); }; #endif // RESOURCEBASE_H