Implemented MakeSureDirectoryPathExists.
[wine] / dlls / msvideo / vfw16.h
1 /*
2  * Copyright 1999 Marcus Meissner
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
17  */
18
19 #ifndef __WINE_VFW16_H
20 #define __WINE_VFW16_H
21
22 #include "vfw.h"
23 #include "wownt32.h"
24 #include "wine/windef16.h"
25
26 #ifdef __cplusplus
27 extern "C" {
28 #endif  /* __cplusplus */
29
30 typedef HANDLE16 HDRAWDIB16;
31
32 #include "pshpack1.h"
33
34 typedef struct {
35         DWORD dwSize;
36         DWORD fccType;
37         DWORD fccHandler;
38         DWORD dwFlags;
39         DWORD dwVersion;
40         DWORD dwVersionICM;
41         /*
42          * under Win16, normal chars are used
43          */
44         CHAR szName[16];
45         CHAR szDescription[128];
46         CHAR szDriver[128];
47 } ICINFO16;
48
49 typedef struct {
50     DWORD               dwFlags;
51     LPBITMAPINFOHEADER  lpbiSrc;
52     LPVOID              lpSrc;
53     LPBITMAPINFOHEADER  lpbiDst;
54     LPVOID              lpDst;
55
56     INT16               xDst;       /* destination rectangle */
57     INT16               yDst;
58     INT16               dxDst;
59     INT16               dyDst;
60
61     INT16               xSrc;       /* source rectangle */
62     INT16               ySrc;
63     INT16               dxSrc;
64     INT16               dySrc;
65 } ICDECOMPRESSEX16;
66
67 typedef struct {
68         DWORD           dwFlags;
69         HPALETTE16      hpal;
70         HWND16          hwnd;
71         HDC16           hdc;
72         INT16           xDst;
73         INT16           yDst;
74         INT16           dxDst;
75         INT16           dyDst;
76         LPBITMAPINFOHEADER      lpbi;
77         INT16           xSrc;
78         INT16           ySrc;
79         INT16           dxSrc;
80         INT16           dySrc;
81         DWORD           dwRate;
82         DWORD           dwScale;
83 } ICDRAWBEGIN16;
84
85 #include "poppack.h"
86
87 typedef struct {
88         DWORD dwFlags;
89         LPBITMAPINFOHEADER lpbiIn;
90         LPBITMAPINFOHEADER lpbiSuggest;
91         INT16 dxSrc;
92         INT16 dySrc;
93         INT16 dxDst;
94         INT16 dyDst;
95         HIC16 hicDecompressor;
96 } ICDRAWSUGGEST16;
97
98 DWORD   VFWAPIV ICDraw16(HIC16,DWORD,LPVOID,LPVOID,DWORD,LONG);
99 DWORD   VFWAPIV ICDrawBegin16(HIC16,DWORD,HPALETTE16,HWND16,HDC16,INT16,
100                               INT16,INT16,INT16,LPBITMAPINFOHEADER,
101                               INT16,INT16,INT16,INT16,DWORD,DWORD);
102 LRESULT WINAPI  ICClose16(HIC16);
103 DWORD   VFWAPIV ICCompress16(HIC16,DWORD,LPBITMAPINFOHEADER,LPVOID,
104                              LPBITMAPINFOHEADER,LPVOID,LPDWORD,
105                              LPDWORD,LONG,DWORD,DWORD,
106                              LPBITMAPINFOHEADER,LPVOID);
107 DWORD   VFWAPIV ICDecompress16(HIC16,DWORD,LPBITMAPINFOHEADER,LPVOID,
108                                LPBITMAPINFOHEADER,LPVOID);
109 HIC16   VFWAPI  ICGetDisplayFormat16(HIC16,LPBITMAPINFOHEADER,
110                                      LPBITMAPINFOHEADER,INT16,INT16,
111                                      INT16);
112 LRESULT VFWAPI  ICGetInfo16(HIC16,ICINFO16 *,DWORD);
113 BOOL16  VFWAPI  ICInfo16(DWORD,DWORD,ICINFO16 *);
114 HIC16   VFWAPI  ICLocate16(DWORD,DWORD,LPBITMAPINFOHEADER,
115                            LPBITMAPINFOHEADER,WORD);
116 LRESULT VFWAPIV ICMessage16(void);
117 HIC16   VFWAPI  ICOpen16(DWORD,DWORD,UINT16);
118 HIC16   VFWAPI  ICOpenFunction16(DWORD,DWORD,UINT16,FARPROC16);
119 LRESULT VFWAPI  ICSendMessage16(HIC16,UINT16,DWORD,DWORD);
120
121 #ifdef __cplusplus
122 }
123 #endif  /* __cplusplus */
124
125 #endif  /* __WINE_VFW16_H */