Skip to content

Instantly share code, notes, and snippets.

@PoetaKodu
Last active January 28, 2017 21:31
Show Gist options
  • Save PoetaKodu/66d0bc89e29be7cb0b93e1464e48f16b to your computer and use it in GitHub Desktop.
Save PoetaKodu/66d0bc89e29be7cb0b93e1464e48f16b to your computer and use it in GitHub Desktop.
#include <unordered_map>
/* Klasa do zarządzania teksturami
*/
class CTextureManager final
{
public:
/* Typedef dla umilenia życia. */
typedef std::unordered_map<std::string, sf::Texture *> TTexturesUM;
/* Destruktor - zwalnia cala pamiec, wszystkie pozostale tekstury
*/
~CTextureManager();
/* Menedzer tekstur to singleton, zabraniamy kopiowania tego obiektu.
*/
CTextureManager(const CTextureManager &Other) = delete;
/* Menedzer tekstur to singleton, zabraniamy kopiowania tego obiektu.
*/
void operator=(const CTextureManager &Other) = delete;
private:
/* Konstruktor menedzera tekstur.
Jest prywatny ze względu na to, że cała klasa jest singletonem.
*/
CTextureManager();
/* Tworzy pojedynczą instancję klasy CTextureManager i ją zwraca.
Ta metoda jest prywatna, ze względu na to, że zostawiamy zarządzanie
klasą metodom statycznym.
*/
inline static CTextureManager& Instance()
{
static CTextureManager instance;
return instance;
}
TTexturesUM m_textures; // Zbiór tekstur.
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment