Merge branch 'bug_621_caid_info' into experimental
[vuplus_dvbapp] / lib / gdi / gfbdc.h
1 #ifndef __gfbdc_h
2 #define __gfbdc_h
3
4 #include "fb.h"
5 #include "gpixmap.h"
6 #include "gmaindc.h"
7
8 class gFBDC: public gMainDC
9 {
10         fbClass *fb;
11         void exec(const gOpcode *opcode);
12         unsigned char ramp[256], rampalpha[256]; // RGB ramp 0..255
13         int brightness, gamma, alpha;
14         void calcRamp();
15         void setPalette();
16         gSurface surface, surface_back;
17         int m_enable_double_buffering;
18         int m_xres, m_yres;
19 public:
20         void setResolution(int xres, int yres);
21         void reloadSettings();
22         void setAlpha(int alpha);
23         void setBrightness(int brightness);
24         void setGamma(int gamma);
25
26         int getAlpha() { return alpha; }
27         int getBrightness() { return brightness; }
28         int getGamma() { return gamma; }
29
30         int haveDoubleBuffering() { return m_enable_double_buffering; }
31
32         void saveSettings();
33
34         gFBDC();
35         virtual ~gFBDC();
36         int islocked() { return fb->islocked(); }
37 };
38
39 #endif