aboutsummaryrefslogtreecommitdiff
path: root/include/RenderBackend/OpenGL/Texture2D.hpp
blob: c0bfbd2b912378eb2bfab3432417962f472e9191 (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
#pragma once

#include "../../types.hpp"
#include "../../utils.hpp"

namespace amalgine
{
    class Image;
    
    class Texture2D
    {
        DISABLE_COPY(Texture2D)
    public:
        Texture2D();
        // Not thread safe
        Texture2D(Image *image);
        ~Texture2D();
        Texture2D(Texture2D &&other);
        Texture2D& operator=(Texture2D &&other);

        i32 get_texture_id() const { return texture_id; }
    private:
        i32 texture_id;
        u32 texture_ref;
    };
}