efb43f721fcf52267919e16190447c51cc3ee8d4
[dosdemo] / src / screen.h
1 #ifndef SCREEN_H_
2 #define SCREEN_H_
3
4 struct screen {
5         char *name;
6
7         int (*init)(void);
8         void (*shutdown)(void);
9
10         void (*start)(long trans_time);
11         void (*stop)(long trans_time);
12
13         void (*draw)(void);
14 };
15
16 int scr_init(void);
17 void scr_shutdown(void);
18
19 void scr_update(void);
20 void scr_draw(void);
21
22 struct screen *scr_lookup(const char *name);
23 struct screen *scr_screen(int idx);
24 int scr_num_screens(void);
25 int scr_change(struct screen *s, long trans_time);
26
27 #endif  /* SCREEN_H_ */