fbee

view src/fbee.c @ 0:88a2049be27b

fbee initial
author John Tsiombikas <nuclear@member.fsf.org>
date Tue, 05 Feb 2013 13:40:36 +0200
parents
children
line source
1 #include <string.h>
2 #include "fbee.h"
3 #include "fbeeimpl.h"
5 static struct closure evfunc[NUM_FBEE_EVENTS];
7 int fbee_init(void)
8 {
9 memset(evfunc, 0, sizeof evfunc);
11 return fbee_sys_init();
12 }
14 void fbee_destroy(void)
15 {
16 fbee_sys_destroy();
17 }
19 int fbee_set_video_mode(int width, int height, int bpp, unsigned int flags)
20 {
21 return fbee_sys_set_video(width, height, bpp, flags);
22 }
24 int fbee_get_video_mode(int *width, int *height, int *bpp)
25 {
26 return fbee_sys_get_video(width, height, bpp);
27 }
29 void fbee_event_func(int evtype, void (*func)(), void *cls)
30 {
31 evfunc[evtype].func = func;
32 evfunc[evtype].cls = cls;
33 }
35 int fbee_process_events(void)
36 {
37 return fbee_sys_process_events();
38 }
40 void fbee_evloop(void)
41 {
42 fbee_sys_evloop();
43 }
45 void *fbee_framebuffer(void)
46 {
47 return fbee_sys_framebuffer();
48 }
50 void fbee_update(void *img)
51 {
52 fbee_sys_update(img);
53 }
56 struct closure *fbee_get_callback(int ev)
57 {
58 if(ev < 0 || ev >= NUM_FBEE_EVENTS) {
59 return 0;
60 }
62 return evfunc[ev].func ? evfunc + ev : 0;
63 }