2 * Animation class extra info
4 * Copyright 1998 Eric Kohl
7 #ifndef __WINE_ANIMATE_H
8 #define __WINE_ANIMATE_H
14 typedef struct tagANIMATE_INFO
16 /* pointer to msvideo functions. it's easier to put them here.
17 * to be correct, they should be defined on a per process basis, but
18 * this would required a per process storage. We're using a per object
19 * storage instead, which is not efficient on memory usage, but
20 * will lead to less bugs in the future
22 HIC WINAPI (*fnICOpen)(DWORD, DWORD, UINT);
23 LRESULT WINAPI (*fnICClose)(HIC);
24 LRESULT WINAPI (*fnICSendMessage)(HIC, UINT, DWORD, DWORD);
25 DWORD WINAPIV (*fnICDecompress)(HIC,DWORD,LPBITMAPINFOHEADER,LPVOID,LPBITMAPINFOHEADER,LPVOID);
27 HMMIO WINAPI (*fnmmioOpenA)(LPSTR,MMIOINFO*,DWORD);
28 MMRESULT WINAPI (*fnmmioClose)(HMMIO,UINT);
29 UINT WINAPI (*fnmmioAscend)(HMMIO,MMCKINFO*,UINT);
30 UINT WINAPI (*fnmmioDescend)(HMMIO,MMCKINFO*,const MMCKINFO*,UINT);
31 LONG WINAPI (*fnmmioSeek)(HMMIO,LONG,INT);
32 LONG WINAPI (*fnmmioRead)(HMMIO,HPSTR,LONG);
34 /* reference to input stream (file or resource) */
36 HMMIO hMMio; /* handle to mmio stream */
38 /* information on the loaded AVI file */
41 LPBITMAPINFOHEADER inbih;
43 /* data for the decompressor */
45 LPBITMAPINFOHEADER outbih;
48 /* data for the background mechanism */
52 /* data for playing the file */
60 extern VOID ANIMATE_Register (VOID);
61 extern VOID ANIMATE_Unregister (VOID);
63 #endif /* __WINE_ANIMATE_H */