1 /* Hey EMACS -*- linux-c -*- */
2 /* $Id: calc.h 1977 2006-02-18 13:13:31Z roms $ */
3 
4 /*  TiEmu - a TI emulator
5  *  Copyright (c) 2000-2001, Thomas Corvazier, Romain Lievin
6  *  Copyright (c) 2001-2003, Romain Lievin
7  *  Copyright (c) 2003, Julien Blache
8  *  Copyright (c) 2004, Romain Li�vin
9  *  Copyright (c) 2005, Romain Li�vin
10  *
11  *  This program is free software; you can redistribute it and/or modify
12  *  it under the terms of the GNU General Public License as published by
13  *  the Free Software Foundation; either version 2 of the License, or
14  *  (at your option) any later version.
15  *
16  *  This program is distributed in the hope that it will be useful,
17  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
18  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19  *  GNU General Public License for more details.
20  *
21  *  You should have received a copy of the GNU General Public License
22  *  along with this program; if not, write to the Free Software
23  *  Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
24  */
25 
26 #ifndef __CALC_H__
27 #define __CALC_H__
28 
29 #include <stdint.h>
30 #include "struct.h"
31 
32 /* Variables */
33 
34 extern GtkWidget *main_wnd;
35 
36 /* Functions */
37 
38 int hid_init(void);
39 int hid_exit(void);
40 
41 void hid_lcd_rate_set(void);
42 
43 int hid_update_keys(void);
44 int hid_update_lcd(void);
45 
46 int hid_switch_with_skin(void);
47 int hid_switch_without_skin(void);
48 int hid_change_skin(const char *filename);
49 
50 int hid_switch_fullscreen(void);
51 int hid_switch_unfullscreen(void);
52 
53 int hid_switch_normal_view(void);
54 int hid_switch_large_view(void);
55 
56 void hid_set_callbacks(void);
57 
58 int hid_screenshot_single(void);
59 int hid_screenshot_burst(void);
60 
61 int hid_popup_menu(void);
62 
63 GdkPixbuf* hid_copy_lcd(void);
64 
65 /* Private Types */
66 
67 typedef struct
68 {
69     uint8_t r;
70     uint8_t g;
71     uint8_t b;
72 } RGB;
73 
74 typedef struct
75 {
76 	int 	width;
77 	int 	height;
78 	int 	rowstride;
79 	int 	n_channels;
80 	guchar*	pixels;
81 	gulong*	pixels2;
82 } LCD_INFOS;
83 
84 typedef GdkRect LCD_RECT;
85 typedef GdkRect SKN_RECT;
86 typedef GdkRect WND_RECT;
87 
88 #endif
89