1 /*
2  * OpenBOR - http://www.chronocrash.com
3  * -----------------------------------------------------------------------
4  * All rights reserved, see LICENSE in OpenBOR root for details.
5  *
6  * Copyright (c) 2004 - 2014 OpenBOR Team
7  */
8 
9 #ifndef	SPRITEQ_H
10 #define	SPRITEQ_H
11 
12 
13 #define			SFX_NONE		0
14 #define			SFX_REMAP		1
15 #define			SFX_BLEND		2
16 #define			SFX_SPECIAL		3
17 
18 extern int  pixelformat;
19 // Sprite queueing and sorting
20 void spriteq_add_sprite(int x, int y, int z, int id, s_drawmethod *pdrawmethod, int sortid);
21 void spriteq_add_frame(int x, int y, int z, s_sprite *frame, s_drawmethod *pdrawmethod, int sortid);
22 void spriteq_add_dot(int sx, int sy, int z, int colour, s_drawmethod *pdrawmethod);
23 void spriteq_add_line(int sx, int sy, int ex, int ey, int z, int colour, s_drawmethod *pdrawmethod);
24 void spriteq_add_box(int x, int y, int width, int height, int z, int colour, s_drawmethod *pdrawmethod);
25 void spriteq_add_screen(int x, int y, int z, s_screen *ps, s_drawmethod *pdrawmethod, int sortid);
26 void spriteq_draw(s_screen *screen, int newonly, int minz, int maxz, int dx, int dy);
27 
28 // Quantity readouts.
29 int spriteq_get_sprite_count();
30 int spriteq_get_sprite_max();
31 
32 void spriteq_lock();
33 void spriteq_unlock();
34 int  spriteq_islocked();
35 
36 void spriteq_clear(void);
37 
38 
39 #endif
40 
41