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 */