#ifndef CRESOURCEMANAGER_HPP #define CRESOURCEMANAGER_HPP #include "Model/CModelManager.hpp" #include "Mesh/CMeshManager.hpp" #include "Material/CMaterialManager.hpp" #include "Audio/CAudioManager.hpp" #include "Shader/CShadersManager.hpp" #include "Texture/CTextureManager.hpp" class CResourceManager{ private: CModelManager m_modelManager; CMeshManager m_meshManager; CMaterialManager m_materialManager; CTextureManager m_textureManager; CAudioManager m_audioManager; CShadersManager m_shaderManager; public: CModelManager& models() { return m_modelManager; } CMeshManager& meshes() { return m_meshManager; } CMaterialManager& materials() { return m_materialManager; } CTextureManager& textures() { return m_textureManager; } CAudioManager& sounds() { return m_audioManager; } CShadersManager& shaders() { return m_shaderManager; } const CModelManager& models() const { return m_modelManager; } const CMeshManager& meshes() const { return m_meshManager; } const CMaterialManager& materials() const { return m_materialManager; } const CTextureManager& textures() const { return m_textureManager; } const CAudioManager& sounds() const { return m_audioManager; } const CShadersManager& shaders() const { return m_shaderManager; } void cleanup() { m_modelManager.clear(); m_materialManager.clear(); m_meshManager.clear(); m_textureManager.clear(); m_audioManager.clear(); m_shaderManager.clear(); } }; #endif