aboutsummaryrefslogtreecommitdiff
path: root/mwe/resource-manager/TextureMap.h
blob: dc8b8d38776d0864c946007c1614d5a7689c2bf9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#pragma once


#include <SDL_rect.h>
#include <SDL_render.h>
#include <string>

class TextureMap final
{
public:
    TextureMap();
    ~TextureMap();

    TextureMap(const TextureMap&) = delete;
    TextureMap(TextureMap&&) = delete;

    TextureMap& operator = (const TextureMap&) = delete;
    TextureMap& operator = (TextureMap&&) = delete;

    bool loadFromFile(const std::string&, SDL_Renderer*);
    SDL_Point getSize() const { return m_size; }

    operator SDL_Texture* () { return m_texture; }

private:
    SDL_Texture* m_texture;
    SDL_Point m_size;
};