add level component saving functions which use PhysicsFS (didn't commit properly...
[btb/d2x.git] / include / libmve.h
1 #ifndef _LIBMVE_H
2 #define _LIBMVE_H
3
4 #define MVE_ERR_EOF 1
5
6 typedef struct{
7         int screenWidth;
8         int screenHeight;
9         int width;
10         int height;
11         int truecolor;
12 } MVE_videoSpec;
13
14 int  MVE_rmPrepMovie(void *stream, int x, int y, int track);
15 int  MVE_rmStepMovie();
16 void MVE_rmHoldMovie();
17 void MVE_rmEndMovie();
18
19 void MVE_getVideoSpec(MVE_videoSpec *vSpec);
20
21 void MVE_sndInit(int x);
22
23 typedef unsigned int (*mve_cb_Read)(void *stream,
24                                     void *buffer,
25                                     unsigned int count);
26
27 typedef void *(*mve_cb_Alloc)(unsigned int size);
28 typedef void (*mve_cb_Free)(void *ptr);
29
30 typedef void (*mve_cb_ShowFrame)(unsigned char *buffer,
31                                  unsigned int bufw, unsigned int bufh,
32                                  unsigned int sx, unsigned int sy,
33                                  unsigned int w, unsigned int h,
34                                  unsigned int dstx, unsigned int dsty);
35
36 typedef void (*mve_cb_SetPalette)(unsigned char *p,
37                                   unsigned int start, unsigned int count);
38
39 void MVE_ioCallbacks(mve_cb_Read io_read);
40 void MVE_memCallbacks(mve_cb_Alloc mem_alloc, mve_cb_Free mem_free);
41 void MVE_sfCallbacks(mve_cb_ShowFrame showframe);
42 void MVE_palCallbacks(mve_cb_SetPalette setpalette);
43
44 #endif /* _LIBMVE_H */