source: trunk/include/win/animate.h@ 2874

Last change on this file since 2874 was 2874, checked in by cbratschi, 26 years ago

* empty log message *

File size: 1.9 KB
Line 
1/* $Id: animate.h,v 1.3 2000-02-23 17:03:00 cbratschi Exp $ */
2
3/*
4 * Animation class extra info
5 *
6 * Copyright 1998 Eric Kohl
7 * Copyright 1999 Christoph Bratschi
8 */
9
10#ifndef __WINE_ANIMATE_H
11#define __WINE_ANIMATE_H
12
13#define CINTERFACE
14
15#include "windef.h"
16#include "vfw.h"
17
18typedef struct tagANIMATE_INFO
19{
20 COMCTL32_HEADER header;
21
22 /* pointer to msvideo functions. it's easier to put them here.
23 * to be correct, they should be defined on a per process basis, but
24 * this would required a per process storage. We're using a per object
25 * storage instead, which is not efficient on memory usage, but
26 * will lead to less bugs in the future
27 */
28 HIC (WINAPI* fnICOpen)(DWORD, DWORD, UINT);
29 LRESULT (WINAPI* fnICClose)(HIC);
30 LRESULT (WINAPI* fnICSendMessage)(HIC, UINT, DWORD, DWORD);
31 DWORD (WINAPIV* fnICDecompress)(HIC,DWORD,LPBITMAPINFOHEADER,LPVOID,LPBITMAPINFOHEADER,LPVOID);
32
33 /* reference to input stream (file or resource) */
34 HGLOBAL hRes;
35 HMMIO hMMio; /* handle to mmio stream */
36 HWND hWnd;
37 /* information on the loaded AVI file */
38 MainAVIHeader mah;
39 AVIStreamHeader ash;
40 LPBITMAPINFOHEADER inbih;
41 LPDWORD lpIndex;
42 /* data for the decompressor */
43 HIC hic;
44 LPBITMAPINFOHEADER outbih;
45 LPVOID indata;
46 LPVOID outdata;
47 /* data for the background mechanism */
48 CRITICAL_SECTION cs;
49 HANDLE hThread;
50 UINT delay;
51 BOOL stopThread;
52 UINT uTimer;
53 /* data for playing the file */
54 int nFromFrame;
55 int nToFrame;
56 int nLoop;
57 int currFrame;
58} ANIMATE_INFO;
59
60
61extern VOID ANIMATE_Register (VOID);
62extern VOID ANIMATE_Unregister (VOID);
63
64#endif /* __WINE_ANIMATE_H */
Note: See TracBrowser for help on using the repository browser.