]> git.sesse.net Git - nageru/blob - shared/ref_counted_texture.h
20d0e5abae0eba26678ed8d4a07cad1f1d85a7d3
[nageru] / shared / ref_counted_texture.h
1 #ifndef _REF_COUNTED_TEXTURE_H
2 #define _REF_COUNTED_TEXTURE_H 1
3
4 // A wrapper around an OpenGL texture that is automatically deleted.
5
6 #include <epoxy/gl.h>
7 #include <memory>
8
9 struct TextureDeleter {
10         void operator() (GLuint *tex)
11         {
12                 glDeleteTextures(1, tex);
13                 delete tex;
14         }
15 };
16
17 typedef std::unique_ptr<GLuint, TextureDeleter> RefCountedTexture;
18
19 #endif  // !defined(_REF_COUNTED_TEXTURE)