fbee
annotate 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 |
rev | line source |
---|---|
nuclear@0 | 1 #include <string.h> |
nuclear@0 | 2 #include "fbee.h" |
nuclear@0 | 3 #include "fbeeimpl.h" |
nuclear@0 | 4 |
nuclear@0 | 5 static struct closure evfunc[NUM_FBEE_EVENTS]; |
nuclear@0 | 6 |
nuclear@0 | 7 int fbee_init(void) |
nuclear@0 | 8 { |
nuclear@0 | 9 memset(evfunc, 0, sizeof evfunc); |
nuclear@0 | 10 |
nuclear@0 | 11 return fbee_sys_init(); |
nuclear@0 | 12 } |
nuclear@0 | 13 |
nuclear@0 | 14 void fbee_destroy(void) |
nuclear@0 | 15 { |
nuclear@0 | 16 fbee_sys_destroy(); |
nuclear@0 | 17 } |
nuclear@0 | 18 |
nuclear@0 | 19 int fbee_set_video_mode(int width, int height, int bpp, unsigned int flags) |
nuclear@0 | 20 { |
nuclear@0 | 21 return fbee_sys_set_video(width, height, bpp, flags); |
nuclear@0 | 22 } |
nuclear@0 | 23 |
nuclear@0 | 24 int fbee_get_video_mode(int *width, int *height, int *bpp) |
nuclear@0 | 25 { |
nuclear@0 | 26 return fbee_sys_get_video(width, height, bpp); |
nuclear@0 | 27 } |
nuclear@0 | 28 |
nuclear@0 | 29 void fbee_event_func(int evtype, void (*func)(), void *cls) |
nuclear@0 | 30 { |
nuclear@0 | 31 evfunc[evtype].func = func; |
nuclear@0 | 32 evfunc[evtype].cls = cls; |
nuclear@0 | 33 } |
nuclear@0 | 34 |
nuclear@0 | 35 int fbee_process_events(void) |
nuclear@0 | 36 { |
nuclear@0 | 37 return fbee_sys_process_events(); |
nuclear@0 | 38 } |
nuclear@0 | 39 |
nuclear@0 | 40 void fbee_evloop(void) |
nuclear@0 | 41 { |
nuclear@0 | 42 fbee_sys_evloop(); |
nuclear@0 | 43 } |
nuclear@0 | 44 |
nuclear@0 | 45 void *fbee_framebuffer(void) |
nuclear@0 | 46 { |
nuclear@0 | 47 return fbee_sys_framebuffer(); |
nuclear@0 | 48 } |
nuclear@0 | 49 |
nuclear@0 | 50 void fbee_update(void *img) |
nuclear@0 | 51 { |
nuclear@0 | 52 fbee_sys_update(img); |
nuclear@0 | 53 } |
nuclear@0 | 54 |
nuclear@0 | 55 |
nuclear@0 | 56 struct closure *fbee_get_callback(int ev) |
nuclear@0 | 57 { |
nuclear@0 | 58 if(ev < 0 || ev >= NUM_FBEE_EVENTS) { |
nuclear@0 | 59 return 0; |
nuclear@0 | 60 } |
nuclear@0 | 61 |
nuclear@0 | 62 return evfunc[ev].func ? evfunc + ev : 0; |
nuclear@0 | 63 } |