]> git.vomp.tv Git - vompclient.git/blob - osd.h
Preparations for dynamic mode switching
[vompclient.git] / osd.h
1 /*\r
2     Copyright 2004-2005 Chris Tallon\r
3 \r
4     This file is part of VOMP.\r
5 \r
6     VOMP is free software; you can redistribute it and/or modify\r
7     it under the terms of the GNU General Public License as published by\r
8     the Free Software Foundation; either version 2 of the License, or\r
9     (at your option) any later version.\r
10 \r
11     VOMP is distributed in the hope that it will be useful,\r
12     but WITHOUT ANY WARRANTY; without even the implied warranty of\r
13     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
14     GNU General Public License for more details.\r
15 \r
16     You should have received a copy of the GNU General Public License\r
17     along with VOMP; if not, write to the Free Software\r
18     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\r
19 */\r
20 \r
21 #ifndef OSD_H\r
22 #define OSD_H\r
23 \r
24 #include <stdio.h>\r
25 \r
26 class Surface;\r
27 \r
28 class Osd\r
29 {\r
30   public:\r
31     Osd();\r
32     virtual ~Osd();\r
33     static Osd* getInstance();\r
34 \r
35     virtual int init(void* device)=0;\r
36     virtual int shutdown()=0;\r
37     virtual int restore(){return 1;};\r
38     virtual int stopUpdate() {return 1;};\r
39 \r
40     virtual Surface * createNewSurface()=0; // For Boxx\r
41     virtual int charSet() {return 1;};\r
42 \r
43     bool isInitted() {return initted;};\r
44 \r
45     virtual int getFD()=0;\r
46 \r
47     virtual void screenShot(const char* fileName)=0;\r
48 \r
49   protected:\r
50     static Osd* instance;\r
51     int initted;\r
52     Surface* screen;\r
53     int fdOsd;\r
54 };\r
55 \r
56 #endif\r