1 /*
2  * OpenBOR - http://www.LavaLit.com
3  * -----------------------------------------------------------------------
4  * All rights reserved, see LICENSE in OpenBOR root for details.
5  *
6  * Copyright (c) 2004 - 2011 OpenBOR Team
7  */
8 
9 #ifndef SCREEN_H
10 #define SCREEN_H
11 #include "types.h"
12 #include "globals.h"
13 s_screen * allocscreen(int width, int height, int pixelformat);
14 void freescreen(s_screen **screen);
15 void copyscreen(s_screen * dest, s_screen * src);
16 void copyscreen_o(s_screen * dest, s_screen * src, int x, int y);
17 
18 void clearscreen(s_screen * s);
19 void scalescreen(s_screen * dest, s_screen * src);
20 
21 void copyscreen_trans(s_screen * dest, s_screen * src, int x, int y);
22 void copyscreen_remap(s_screen * dest, s_screen * src, int x, int y, unsigned char* remap);
23 void blendscreen(s_screen * dest, s_screen * src, int x, int y, unsigned char* lut);
24 void putscreen(s_screen* dest, s_screen* src, int x, int y, s_drawmethod* drawmethod);
25 void zoomscreen(s_screen* dest, s_screen* src, int centerx, int centery, int scalex, int scaley);
26 
27 //------------------------------16
28 
29 void putscreenx8p16(s_screen * dest, s_screen * src, int x, int y, int key, u16* remap, u16(*blendfp)(u16,u16));
30 void blendscreen16(s_screen * dest, s_screen * src, int x, int y, int key, u16(*blendfp)(u16, u16));
31 void scalescreen16(s_screen * dest, s_screen * src);
32 
33 
34 //------------------------------24
35 
36 void putscreenx8p24(s_screen * dest, s_screen * src, int x, int y, int key, unsigned char* remap, u32(*blendfp)(u32,u32));
37 void blendscreen24(s_screen * dest, s_screen * src, int x, int y, int key, u32(*blendfp)(u32, u32));
38 
39 
40 //------------------------------32
41 
42 void putscreenx8p32(s_screen * dest, s_screen * src, int x, int y, int key, u32* remap, u32(*blendfp)(u32,u32));
43 void blendscreen32(s_screen * dest, s_screen * src, int x, int y, int key, u32(*blendfp)(u32, u32));
44 void scalescreen32(s_screen * dest, s_screen * src);
45 
46 
47 #endif
48 
49