]> git.tdb.fi Git - libs/gl.git/blob - source/core/texture2dmultisample.h
Move all OpenGL-specific code to a separate directory
[libs/gl.git] / source / core / texture2dmultisample.h
1 #ifndef MSP_GL_TEXTURE2DMULTISAMPLE_H_
2 #define MSP_GL_TEXTURE2DMULTISAMPLE_H_
3
4 #include "texture2dmultisample_backend.h"
5
6 namespace Msp {
7 namespace GL {
8
9 class Texture2DMultisample: public Texture2DMultisampleBackend
10 {
11         friend Texture2DMultisampleBackend;
12
13 private:
14         unsigned width;
15         unsigned height;
16         unsigned samples;
17
18 public:
19         Texture2DMultisample();
20
21         void storage(PixelFormat fmt, unsigned wd, unsigned ht, unsigned sm);
22
23         virtual void image(const Graphics::Image &, unsigned = 0);
24
25         unsigned get_width() const { return width; }
26         unsigned get_height() const { return height; }
27         unsigned get_samples() const { return samples; }
28
29         virtual AsyncLoader *load(IO::Seekable &, const Resources * = 0) { return 0; }
30         virtual std::uint64_t get_data_size() const;
31         virtual void unload() { }
32 };
33
34 } // namespace GL
35 } // namespace Msp
36
37 #endif