source: trunk/src/msvfw32/vfw16.h@ 10367

Last change on this file since 10367 was 9140, checked in by sandervl, 23 years ago

wine resync; fixed 16 bits handle bugs

File size: 3.6 KB
Line 
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 "wine/windef16.h"
24
25#ifdef __cplusplus
26extern "C" {
27#endif /* __cplusplus */
28
29#ifdef __WIN32OS2__
30#include <heapstring.h>
31
32#define GlobalAlloc16 GlobalAlloc
33#define GlobalLock16 GlobalLock
34#define GlobalUnlock16 GlobalUnlock
35#define GlobalFree16 GlobalFree
36
37#define MapLS(a) a
38#define UnMapLS(a)
39
40#define HIC16 DWORD
41
42#endif
43
44typedef HANDLE16 HDRAWDIB16;
45
46#include "pshpack1.h"
47
48typedef struct {
49 DWORD dwSize;
50 DWORD fccType;
51 DWORD fccHandler;
52 DWORD dwFlags;
53 DWORD dwVersion;
54 DWORD dwVersionICM;
55 /*
56 * under Win16, normal chars are used
57 */
58 CHAR szName[16];
59 CHAR szDescription[128];
60 CHAR szDriver[128];
61} ICINFO16;
62
63typedef struct {
64 DWORD dwFlags;
65 LPBITMAPINFOHEADER lpbiSrc;
66 LPVOID lpSrc;
67 LPBITMAPINFOHEADER lpbiDst;
68 LPVOID lpDst;
69
70 INT16 xDst; /* destination rectangle */
71 INT16 yDst;
72 INT16 dxDst;
73 INT16 dyDst;
74
75 INT16 xSrc; /* source rectangle */
76 INT16 ySrc;
77 INT16 dxSrc;
78 INT16 dySrc;
79} ICDECOMPRESSEX16;
80
81typedef struct {
82 DWORD dwFlags;
83 HPALETTE16 hpal;
84 HWND16 hwnd;
85 HDC16 hdc;
86 INT16 xDst;
87 INT16 yDst;
88 INT16 dxDst;
89 INT16 dyDst;
90 LPBITMAPINFOHEADER lpbi;
91 INT16 xSrc;
92 INT16 ySrc;
93 INT16 dxSrc;
94 INT16 dySrc;
95 DWORD dwRate;
96 DWORD dwScale;
97} ICDRAWBEGIN16;
98
99#include "poppack.h"
100
101typedef struct {
102 DWORD dwFlags;
103 LPBITMAPINFOHEADER lpbiIn;
104 LPBITMAPINFOHEADER lpbiSuggest;
105 INT16 dxSrc;
106 INT16 dySrc;
107 INT16 dxDst;
108 INT16 dyDst;
109 HIC16 hicDecompressor;
110} ICDRAWSUGGEST16;
111
112DWORD VFWAPIV ICDraw16(HIC16,DWORD,LPVOID,LPVOID,DWORD,LONG);
113DWORD VFWAPIV ICDrawBegin16(HIC16,DWORD,HPALETTE16,HWND16,HDC16,INT16,
114 INT16,INT16,INT16,LPBITMAPINFOHEADER,
115 INT16,INT16,INT16,INT16,DWORD,DWORD);
116LRESULT WINAPI ICClose16(HIC16);
117DWORD VFWAPIV ICCompress16(HIC16,DWORD,LPBITMAPINFOHEADER,LPVOID,
118 LPBITMAPINFOHEADER,LPVOID,LPDWORD,
119 LPDWORD,LONG,DWORD,DWORD,
120 LPBITMAPINFOHEADER,LPVOID);
121DWORD VFWAPIV ICDecompress16(HIC16,DWORD,LPBITMAPINFOHEADER,LPVOID,
122 LPBITMAPINFOHEADER,LPVOID);
123HIC16 VFWAPI ICGetDisplayFormat16(HIC16,LPBITMAPINFOHEADER,
124 LPBITMAPINFOHEADER,INT16,INT16,
125 INT16);
126LRESULT VFWAPI ICGetInfo16(HIC16,ICINFO16 *,DWORD);
127BOOL16 VFWAPI ICInfo16(DWORD,DWORD,ICINFO16 *);
128HIC16 VFWAPI ICLocate16(DWORD,DWORD,LPBITMAPINFOHEADER,
129 LPBITMAPINFOHEADER,WORD);
130LRESULT VFWAPIV ICMessage16(void);
131HIC16 VFWAPI ICOpen16(DWORD,DWORD,UINT16);
132HIC16 VFWAPI ICOpenFunction16(DWORD,DWORD,UINT16,FARPROC16);
133LRESULT VFWAPI ICSendMessage16(HIC16,UINT16,DWORD,DWORD);
134
135#ifdef __cplusplus
136}
137#endif /* __cplusplus */
138
139#endif /* __WINE_VFW16_H */
Note: See TracBrowser for help on using the repository browser.