]> git.tdb.fi Git - libs/gui.git/blob - source/gbase/glcontext.h
Drop Id tags and copyright notices from files
[libs/gui.git] / source / gbase / glcontext.h
1 #ifndef MSP_GBASE_GLCONTEXT_H_
2 #define MSP_GBASE_GLCONTEXT_H_
3
4 namespace Msp {
5 namespace Graphics {
6
7 class Display;
8 class Window;
9
10 struct GLOptions
11 {
12         bool alpha;
13         bool stencil;
14         bool doublebuffer;
15         unsigned multisample;
16
17         GLOptions();
18 };
19
20 class GLContext
21 {
22 private:
23         struct Private;
24
25         Display &display;
26         Window &window;
27         Private *priv;
28
29 public:
30         GLContext(Window &wnd, const GLOptions &opts=GLOptions());
31         ~GLContext();
32
33         void swap_buffers();
34 private:
35         void window_resized(unsigned, unsigned);
36 };
37
38 } // namespace Graphics
39 } // namespace Msp
40
41 #endif