1 /* File generated automatically from tools/winapi/test.dat; do not edit! */
2 /* This file can be copied, modified and distributed without restriction. */
5 * Unit tests for data structure packing
9 #define _WIN32_IE 0x0501
10 #define _WIN32_WINNT 0x0501
12 #define WINE_NOWINSOCK
16 #include "wine/test.h"
18 /***********************************************************************
19 * Compatibility macros
22 #define DWORD_PTR UINT_PTR
23 #define LONG_PTR INT_PTR
24 #define ULONG_PTR UINT_PTR
26 /***********************************************************************
27 * Windows API extension
30 #if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
31 # define FIELD_ALIGNMENT(type, field) __alignof(((type*)0)->field)
32 #elif defined(__GNUC__)
33 # define FIELD_ALIGNMENT(type, field) __alignof__(((type*)0)->field)
35 /* FIXME: Not sure if is possible to do without compiler extension */
38 #if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
39 # define _TYPE_ALIGNMENT(type) __alignof(type)
40 #elif defined(__GNUC__)
41 # define _TYPE_ALIGNMENT(type) __alignof__(type)
44 * FIXME: Not sure if is possible to do without compiler extension
45 * (if type is not just a name that is, if so the normal)
46 * TYPE_ALIGNMENT can be used)
50 #if defined(TYPE_ALIGNMENT) && defined(_MSC_VER) && _MSC_VER >= 800 && !defined(__cplusplus)
51 #pragma warning(disable:4116)
54 #if !defined(TYPE_ALIGNMENT) && defined(_TYPE_ALIGNMENT)
55 # define TYPE_ALIGNMENT _TYPE_ALIGNMENT
58 /***********************************************************************
62 #ifdef FIELD_ALIGNMENT
63 # define TEST_FIELD_ALIGNMENT(type, field, align) \
64 ok(FIELD_ALIGNMENT(type, field) == align, \
65 "FIELD_ALIGNMENT(" #type ", " #field ") == %d (expected " #align ")\n", \
66 (int)FIELD_ALIGNMENT(type, field))
68 # define TEST_FIELD_ALIGNMENT(type, field, align) do { } while (0)
71 #define TEST_FIELD_OFFSET(type, field, offset) \
72 ok(FIELD_OFFSET(type, field) == offset, \
73 "FIELD_OFFSET(" #type ", " #field ") == %ld (expected " #offset ")\n", \
74 (long int)FIELD_OFFSET(type, field))
76 #ifdef _TYPE_ALIGNMENT
77 #define TEST__TYPE_ALIGNMENT(type, align) \
78 ok(_TYPE_ALIGNMENT(type) == align, "TYPE_ALIGNMENT(" #type ") == %d (expected " #align ")\n", (int)_TYPE_ALIGNMENT(type))
80 # define TEST__TYPE_ALIGNMENT(type, align) do { } while (0)
84 #define TEST_TYPE_ALIGNMENT(type, align) \
85 ok(TYPE_ALIGNMENT(type) == align, "TYPE_ALIGNMENT(" #type ") == %d (expected " #align ")\n", (int)TYPE_ALIGNMENT(type))
87 # define TEST_TYPE_ALIGNMENT(type, align) do { } while (0)
90 #define TEST_TYPE_SIZE(type, size) \
91 ok(sizeof(type) == size, "sizeof(" #type ") == %d (expected " #size ")\n", ((int) sizeof(type)))
93 /***********************************************************************
97 #define TEST_FIELD(type, field_type, field_name, field_offset, field_size, field_align) \
98 TEST_TYPE_SIZE(field_type, field_size); \
99 TEST_FIELD_ALIGNMENT(type, field_name, field_align); \
100 TEST_FIELD_OFFSET(type, field_name, field_offset); \
102 #define TEST_TYPE(type, size, align) \
103 TEST_TYPE_ALIGNMENT(type, align); \
104 TEST_TYPE_SIZE(type, size)
106 #define TEST_TYPE_POINTER(type, size, align) \
107 TEST__TYPE_ALIGNMENT(*(type)0, align); \
108 TEST_TYPE_SIZE(*(type)0, size)
110 #define TEST_TYPE_SIGNED(type) \
111 ok((type) -1 < 0, "(" #type ") -1 < 0\n");
113 #define TEST_TYPE_UNSIGNED(type) \
114 ok((type) -1 > 0, "(" #type ") -1 > 0\n");
116 static void test_pack_ABC(void)
119 TEST_TYPE(ABC, 12, 4);
120 TEST_FIELD(ABC, INT, abcA, 0, 4, 4);
121 TEST_FIELD(ABC, UINT, abcB, 4, 4, 4);
122 TEST_FIELD(ABC, INT, abcC, 8, 4, 4);
125 static void test_pack_ABCFLOAT(void)
127 /* ABCFLOAT (pack 4) */
128 TEST_TYPE(ABCFLOAT, 12, 4);
129 TEST_FIELD(ABCFLOAT, FLOAT, abcfA, 0, 4, 4);
130 TEST_FIELD(ABCFLOAT, FLOAT, abcfB, 4, 4, 4);
131 TEST_FIELD(ABCFLOAT, FLOAT, abcfC, 8, 4, 4);
134 static void test_pack_ABORTPROC(void)
137 TEST_TYPE(ABORTPROC, 4, 4);
140 static void test_pack_BITMAP(void)
142 /* BITMAP (pack 4) */
143 TEST_TYPE(BITMAP, 24, 4);
144 TEST_FIELD(BITMAP, INT, bmType, 0, 4, 4);
145 TEST_FIELD(BITMAP, INT, bmWidth, 4, 4, 4);
146 TEST_FIELD(BITMAP, INT, bmHeight, 8, 4, 4);
147 TEST_FIELD(BITMAP, INT, bmWidthBytes, 12, 4, 4);
148 TEST_FIELD(BITMAP, WORD, bmPlanes, 16, 2, 2);
149 TEST_FIELD(BITMAP, WORD, bmBitsPixel, 18, 2, 2);
150 TEST_FIELD(BITMAP, LPVOID, bmBits, 20, 4, 4);
153 static void test_pack_BITMAPCOREHEADER(void)
155 /* BITMAPCOREHEADER (pack 4) */
156 TEST_TYPE(BITMAPCOREHEADER, 12, 4);
157 TEST_FIELD(BITMAPCOREHEADER, DWORD, bcSize, 0, 4, 4);
158 TEST_FIELD(BITMAPCOREHEADER, WORD, bcWidth, 4, 2, 2);
159 TEST_FIELD(BITMAPCOREHEADER, WORD, bcHeight, 6, 2, 2);
160 TEST_FIELD(BITMAPCOREHEADER, WORD, bcPlanes, 8, 2, 2);
161 TEST_FIELD(BITMAPCOREHEADER, WORD, bcBitCount, 10, 2, 2);
164 static void test_pack_BITMAPCOREINFO(void)
166 /* BITMAPCOREINFO (pack 4) */
167 TEST_TYPE(BITMAPCOREINFO, 16, 4);
168 TEST_FIELD(BITMAPCOREINFO, BITMAPCOREHEADER, bmciHeader, 0, 12, 4);
169 TEST_FIELD(BITMAPCOREINFO, RGBTRIPLE[1], bmciColors, 12, 3, 1);
172 static void test_pack_BITMAPFILEHEADER(void)
174 /* BITMAPFILEHEADER (pack 2) */
175 TEST_TYPE(BITMAPFILEHEADER, 14, 2);
176 TEST_FIELD(BITMAPFILEHEADER, WORD, bfType, 0, 2, 2);
177 TEST_FIELD(BITMAPFILEHEADER, DWORD, bfSize, 2, 4, 2);
178 TEST_FIELD(BITMAPFILEHEADER, WORD, bfReserved1, 6, 2, 2);
179 TEST_FIELD(BITMAPFILEHEADER, WORD, bfReserved2, 8, 2, 2);
180 TEST_FIELD(BITMAPFILEHEADER, DWORD, bfOffBits, 10, 4, 2);
183 static void test_pack_BITMAPINFO(void)
185 /* BITMAPINFO (pack 4) */
186 TEST_TYPE(BITMAPINFO, 44, 4);
187 TEST_FIELD(BITMAPINFO, BITMAPINFOHEADER, bmiHeader, 0, 40, 4);
188 TEST_FIELD(BITMAPINFO, RGBQUAD[1], bmiColors, 40, 4, 1);
191 static void test_pack_BITMAPINFOHEADER(void)
193 /* BITMAPINFOHEADER (pack 4) */
194 TEST_TYPE(BITMAPINFOHEADER, 40, 4);
195 TEST_FIELD(BITMAPINFOHEADER, DWORD, biSize, 0, 4, 4);
196 TEST_FIELD(BITMAPINFOHEADER, LONG, biWidth, 4, 4, 4);
197 TEST_FIELD(BITMAPINFOHEADER, LONG, biHeight, 8, 4, 4);
198 TEST_FIELD(BITMAPINFOHEADER, WORD, biPlanes, 12, 2, 2);
199 TEST_FIELD(BITMAPINFOHEADER, WORD, biBitCount, 14, 2, 2);
200 TEST_FIELD(BITMAPINFOHEADER, DWORD, biCompression, 16, 4, 4);
201 TEST_FIELD(BITMAPINFOHEADER, DWORD, biSizeImage, 20, 4, 4);
202 TEST_FIELD(BITMAPINFOHEADER, LONG, biXPelsPerMeter, 24, 4, 4);
203 TEST_FIELD(BITMAPINFOHEADER, LONG, biYPelsPerMeter, 28, 4, 4);
204 TEST_FIELD(BITMAPINFOHEADER, DWORD, biClrUsed, 32, 4, 4);
205 TEST_FIELD(BITMAPINFOHEADER, DWORD, biClrImportant, 36, 4, 4);
208 static void test_pack_BITMAPV4HEADER(void)
210 /* BITMAPV4HEADER (pack 4) */
211 TEST_TYPE(BITMAPV4HEADER, 108, 4);
212 TEST_FIELD(BITMAPV4HEADER, DWORD, bV4Size, 0, 4, 4);
213 TEST_FIELD(BITMAPV4HEADER, LONG, bV4Width, 4, 4, 4);
214 TEST_FIELD(BITMAPV4HEADER, LONG, bV4Height, 8, 4, 4);
215 TEST_FIELD(BITMAPV4HEADER, WORD, bV4Planes, 12, 2, 2);
216 TEST_FIELD(BITMAPV4HEADER, WORD, bV4BitCount, 14, 2, 2);
217 TEST_FIELD(BITMAPV4HEADER, DWORD, bV4V4Compression, 16, 4, 4);
218 TEST_FIELD(BITMAPV4HEADER, DWORD, bV4SizeImage, 20, 4, 4);
219 TEST_FIELD(BITMAPV4HEADER, LONG, bV4XPelsPerMeter, 24, 4, 4);
220 TEST_FIELD(BITMAPV4HEADER, LONG, bV4YPelsPerMeter, 28, 4, 4);
221 TEST_FIELD(BITMAPV4HEADER, DWORD, bV4ClrUsed, 32, 4, 4);
222 TEST_FIELD(BITMAPV4HEADER, DWORD, bV4ClrImportant, 36, 4, 4);
223 TEST_FIELD(BITMAPV4HEADER, DWORD, bV4RedMask, 40, 4, 4);
224 TEST_FIELD(BITMAPV4HEADER, DWORD, bV4GreenMask, 44, 4, 4);
225 TEST_FIELD(BITMAPV4HEADER, DWORD, bV4BlueMask, 48, 4, 4);
226 TEST_FIELD(BITMAPV4HEADER, DWORD, bV4AlphaMask, 52, 4, 4);
227 TEST_FIELD(BITMAPV4HEADER, DWORD, bV4CSType, 56, 4, 4);
228 TEST_FIELD(BITMAPV4HEADER, CIEXYZTRIPLE, bV4Endpoints, 60, 36, 4);
229 TEST_FIELD(BITMAPV4HEADER, DWORD, bV4GammaRed, 96, 4, 4);
230 TEST_FIELD(BITMAPV4HEADER, DWORD, bV4GammaGreen, 100, 4, 4);
231 TEST_FIELD(BITMAPV4HEADER, DWORD, bV4GammaBlue, 104, 4, 4);
234 static void test_pack_BITMAPV5HEADER(void)
236 /* BITMAPV5HEADER (pack 4) */
237 TEST_TYPE(BITMAPV5HEADER, 124, 4);
238 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5Size, 0, 4, 4);
239 TEST_FIELD(BITMAPV5HEADER, LONG, bV5Width, 4, 4, 4);
240 TEST_FIELD(BITMAPV5HEADER, LONG, bV5Height, 8, 4, 4);
241 TEST_FIELD(BITMAPV5HEADER, WORD, bV5Planes, 12, 2, 2);
242 TEST_FIELD(BITMAPV5HEADER, WORD, bV5BitCount, 14, 2, 2);
243 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5Compression, 16, 4, 4);
244 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5SizeImage, 20, 4, 4);
245 TEST_FIELD(BITMAPV5HEADER, LONG, bV5XPelsPerMeter, 24, 4, 4);
246 TEST_FIELD(BITMAPV5HEADER, LONG, bV5YPelsPerMeter, 28, 4, 4);
247 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5ClrUsed, 32, 4, 4);
248 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5ClrImportant, 36, 4, 4);
249 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5RedMask, 40, 4, 4);
250 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5GreenMask, 44, 4, 4);
251 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5BlueMask, 48, 4, 4);
252 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5AlphaMask, 52, 4, 4);
253 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5CSType, 56, 4, 4);
254 TEST_FIELD(BITMAPV5HEADER, CIEXYZTRIPLE, bV5Endpoints, 60, 36, 4);
255 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5GammaRed, 96, 4, 4);
256 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5GammaGreen, 100, 4, 4);
257 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5GammaBlue, 104, 4, 4);
258 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5Intent, 108, 4, 4);
259 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5ProfileData, 112, 4, 4);
260 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5ProfileSize, 116, 4, 4);
261 TEST_FIELD(BITMAPV5HEADER, DWORD, bV5Reserved, 120, 4, 4);
264 static void test_pack_BLENDFUNCTION(void)
266 /* BLENDFUNCTION (pack 4) */
267 TEST_TYPE(BLENDFUNCTION, 4, 1);
268 TEST_FIELD(BLENDFUNCTION, BYTE, BlendOp, 0, 1, 1);
269 TEST_FIELD(BLENDFUNCTION, BYTE, BlendFlags, 1, 1, 1);
270 TEST_FIELD(BLENDFUNCTION, BYTE, SourceConstantAlpha, 2, 1, 1);
271 TEST_FIELD(BLENDFUNCTION, BYTE, AlphaFormat, 3, 1, 1);
274 static void test_pack_CHARSETINFO(void)
276 /* CHARSETINFO (pack 4) */
277 TEST_TYPE(CHARSETINFO, 32, 4);
278 TEST_FIELD(CHARSETINFO, UINT, ciCharset, 0, 4, 4);
279 TEST_FIELD(CHARSETINFO, UINT, ciACP, 4, 4, 4);
280 TEST_FIELD(CHARSETINFO, FONTSIGNATURE, fs, 8, 24, 4);
283 static void test_pack_CIEXYZ(void)
285 /* CIEXYZ (pack 4) */
286 TEST_TYPE(CIEXYZ, 12, 4);
287 TEST_FIELD(CIEXYZ, FXPT2DOT30, ciexyzX, 0, 4, 4);
288 TEST_FIELD(CIEXYZ, FXPT2DOT30, ciexyzY, 4, 4, 4);
289 TEST_FIELD(CIEXYZ, FXPT2DOT30, ciexyzZ, 8, 4, 4);
292 static void test_pack_CIEXYZTRIPLE(void)
294 /* CIEXYZTRIPLE (pack 4) */
295 TEST_TYPE(CIEXYZTRIPLE, 36, 4);
296 TEST_FIELD(CIEXYZTRIPLE, CIEXYZ, ciexyzRed, 0, 12, 4);
297 TEST_FIELD(CIEXYZTRIPLE, CIEXYZ, ciexyzGreen, 12, 12, 4);
298 TEST_FIELD(CIEXYZTRIPLE, CIEXYZ, ciexyzBlue, 24, 12, 4);
301 static void test_pack_COLOR16(void)
304 TEST_TYPE(COLOR16, 2, 2);
307 static void test_pack_COLORADJUSTMENT(void)
309 /* COLORADJUSTMENT (pack 4) */
310 TEST_TYPE(COLORADJUSTMENT, 24, 2);
311 TEST_FIELD(COLORADJUSTMENT, WORD, caSize, 0, 2, 2);
312 TEST_FIELD(COLORADJUSTMENT, WORD, caFlags, 2, 2, 2);
313 TEST_FIELD(COLORADJUSTMENT, WORD, caIlluminantIndex, 4, 2, 2);
314 TEST_FIELD(COLORADJUSTMENT, WORD, caRedGamma, 6, 2, 2);
315 TEST_FIELD(COLORADJUSTMENT, WORD, caGreenGamma, 8, 2, 2);
316 TEST_FIELD(COLORADJUSTMENT, WORD, caBlueGamma, 10, 2, 2);
317 TEST_FIELD(COLORADJUSTMENT, WORD, caReferenceBlack, 12, 2, 2);
318 TEST_FIELD(COLORADJUSTMENT, WORD, caReferenceWhite, 14, 2, 2);
319 TEST_FIELD(COLORADJUSTMENT, SHORT, caContrast, 16, 2, 2);
320 TEST_FIELD(COLORADJUSTMENT, SHORT, caBrightness, 18, 2, 2);
321 TEST_FIELD(COLORADJUSTMENT, SHORT, caColorfulness, 20, 2, 2);
322 TEST_FIELD(COLORADJUSTMENT, SHORT, caRedGreenTint, 22, 2, 2);
325 static void test_pack_DEVMODEA(void)
327 /* DEVMODEA (pack 4) */
328 TEST_FIELD(DEVMODEA, BYTE[CCHDEVICENAME], dmDeviceName, 0, 32, 1);
329 TEST_FIELD(DEVMODEA, WORD, dmSpecVersion, 32, 2, 2);
330 TEST_FIELD(DEVMODEA, WORD, dmDriverVersion, 34, 2, 2);
331 TEST_FIELD(DEVMODEA, WORD, dmSize, 36, 2, 2);
332 TEST_FIELD(DEVMODEA, WORD, dmDriverExtra, 38, 2, 2);
333 TEST_FIELD(DEVMODEA, DWORD, dmFields, 40, 4, 4);
336 static void test_pack_DEVMODEW(void)
338 /* DEVMODEW (pack 4) */
339 TEST_FIELD(DEVMODEW, WCHAR[CCHDEVICENAME], dmDeviceName, 0, 64, 2);
340 TEST_FIELD(DEVMODEW, WORD, dmSpecVersion, 64, 2, 2);
341 TEST_FIELD(DEVMODEW, WORD, dmDriverVersion, 66, 2, 2);
342 TEST_FIELD(DEVMODEW, WORD, dmSize, 68, 2, 2);
343 TEST_FIELD(DEVMODEW, WORD, dmDriverExtra, 70, 2, 2);
344 TEST_FIELD(DEVMODEW, DWORD, dmFields, 72, 4, 4);
347 static void test_pack_DIBSECTION(void)
349 /* DIBSECTION (pack 4) */
350 TEST_TYPE(DIBSECTION, 84, 4);
351 TEST_FIELD(DIBSECTION, BITMAP, dsBm, 0, 24, 4);
352 TEST_FIELD(DIBSECTION, BITMAPINFOHEADER, dsBmih, 24, 40, 4);
353 TEST_FIELD(DIBSECTION, DWORD[3], dsBitfields, 64, 12, 4);
354 TEST_FIELD(DIBSECTION, HANDLE, dshSection, 76, 4, 4);
355 TEST_FIELD(DIBSECTION, DWORD, dsOffset, 80, 4, 4);
358 static void test_pack_DISPLAY_DEVICEA(void)
360 /* DISPLAY_DEVICEA (pack 4) */
361 TEST_TYPE(DISPLAY_DEVICEA, 424, 4);
362 TEST_FIELD(DISPLAY_DEVICEA, DWORD, cb, 0, 4, 4);
363 TEST_FIELD(DISPLAY_DEVICEA, CHAR[32], DeviceName, 4, 32, 1);
364 TEST_FIELD(DISPLAY_DEVICEA, CHAR[128], DeviceString, 36, 128, 1);
365 TEST_FIELD(DISPLAY_DEVICEA, DWORD, StateFlags, 164, 4, 4);
366 TEST_FIELD(DISPLAY_DEVICEA, CHAR[128], DeviceID, 168, 128, 1);
367 TEST_FIELD(DISPLAY_DEVICEA, CHAR[128], DeviceKey, 296, 128, 1);
370 static void test_pack_DISPLAY_DEVICEW(void)
372 /* DISPLAY_DEVICEW (pack 4) */
373 TEST_TYPE(DISPLAY_DEVICEW, 840, 4);
374 TEST_FIELD(DISPLAY_DEVICEW, DWORD, cb, 0, 4, 4);
375 TEST_FIELD(DISPLAY_DEVICEW, WCHAR[32], DeviceName, 4, 64, 2);
376 TEST_FIELD(DISPLAY_DEVICEW, WCHAR[128], DeviceString, 68, 256, 2);
377 TEST_FIELD(DISPLAY_DEVICEW, DWORD, StateFlags, 324, 4, 4);
378 TEST_FIELD(DISPLAY_DEVICEW, WCHAR[128], DeviceID, 328, 256, 2);
379 TEST_FIELD(DISPLAY_DEVICEW, WCHAR[128], DeviceKey, 584, 256, 2);
382 static void test_pack_DOCINFOA(void)
384 /* DOCINFOA (pack 4) */
385 TEST_TYPE(DOCINFOA, 20, 4);
386 TEST_FIELD(DOCINFOA, INT, cbSize, 0, 4, 4);
387 TEST_FIELD(DOCINFOA, LPCSTR, lpszDocName, 4, 4, 4);
388 TEST_FIELD(DOCINFOA, LPCSTR, lpszOutput, 8, 4, 4);
389 TEST_FIELD(DOCINFOA, LPCSTR, lpszDatatype, 12, 4, 4);
390 TEST_FIELD(DOCINFOA, DWORD, fwType, 16, 4, 4);
393 static void test_pack_DOCINFOW(void)
395 /* DOCINFOW (pack 4) */
396 TEST_TYPE(DOCINFOW, 20, 4);
397 TEST_FIELD(DOCINFOW, INT, cbSize, 0, 4, 4);
398 TEST_FIELD(DOCINFOW, LPCWSTR, lpszDocName, 4, 4, 4);
399 TEST_FIELD(DOCINFOW, LPCWSTR, lpszOutput, 8, 4, 4);
400 TEST_FIELD(DOCINFOW, LPCWSTR, lpszDatatype, 12, 4, 4);
401 TEST_FIELD(DOCINFOW, DWORD, fwType, 16, 4, 4);
404 static void test_pack_EMR(void)
407 TEST_TYPE(EMR, 8, 4);
408 TEST_FIELD(EMR, DWORD, iType, 0, 4, 4);
409 TEST_FIELD(EMR, DWORD, nSize, 4, 4, 4);
412 static void test_pack_EMRABORTPATH(void)
414 /* EMRABORTPATH (pack 4) */
415 TEST_TYPE(EMRABORTPATH, 8, 4);
416 TEST_FIELD(EMRABORTPATH, EMR, emr, 0, 8, 4);
419 static void test_pack_EMRANGLEARC(void)
421 /* EMRANGLEARC (pack 4) */
422 TEST_TYPE(EMRANGLEARC, 28, 4);
423 TEST_FIELD(EMRANGLEARC, EMR, emr, 0, 8, 4);
424 TEST_FIELD(EMRANGLEARC, POINTL, ptlCenter, 8, 8, 4);
425 TEST_FIELD(EMRANGLEARC, DWORD, nRadius, 16, 4, 4);
426 TEST_FIELD(EMRANGLEARC, FLOAT, eStartAngle, 20, 4, 4);
427 TEST_FIELD(EMRANGLEARC, FLOAT, eSweepAngle, 24, 4, 4);
430 static void test_pack_EMRARC(void)
432 /* EMRARC (pack 4) */
433 TEST_TYPE(EMRARC, 40, 4);
434 TEST_FIELD(EMRARC, EMR, emr, 0, 8, 4);
435 TEST_FIELD(EMRARC, RECTL, rclBox, 8, 16, 4);
436 TEST_FIELD(EMRARC, POINTL, ptlStart, 24, 8, 4);
437 TEST_FIELD(EMRARC, POINTL, ptlEnd, 32, 8, 4);
440 static void test_pack_EMRARCTO(void)
442 /* EMRARCTO (pack 4) */
443 TEST_TYPE(EMRARCTO, 40, 4);
444 TEST_FIELD(EMRARCTO, EMR, emr, 0, 8, 4);
445 TEST_FIELD(EMRARCTO, RECTL, rclBox, 8, 16, 4);
446 TEST_FIELD(EMRARCTO, POINTL, ptlStart, 24, 8, 4);
447 TEST_FIELD(EMRARCTO, POINTL, ptlEnd, 32, 8, 4);
450 static void test_pack_EMRBEGINPATH(void)
452 /* EMRBEGINPATH (pack 4) */
453 TEST_TYPE(EMRBEGINPATH, 8, 4);
454 TEST_FIELD(EMRBEGINPATH, EMR, emr, 0, 8, 4);
457 static void test_pack_EMRBITBLT(void)
459 /* EMRBITBLT (pack 4) */
460 TEST_TYPE(EMRBITBLT, 100, 4);
461 TEST_FIELD(EMRBITBLT, EMR, emr, 0, 8, 4);
462 TEST_FIELD(EMRBITBLT, RECTL, rclBounds, 8, 16, 4);
463 TEST_FIELD(EMRBITBLT, LONG, xDest, 24, 4, 4);
464 TEST_FIELD(EMRBITBLT, LONG, yDest, 28, 4, 4);
465 TEST_FIELD(EMRBITBLT, LONG, cxDest, 32, 4, 4);
466 TEST_FIELD(EMRBITBLT, LONG, cyDest, 36, 4, 4);
467 TEST_FIELD(EMRBITBLT, DWORD, dwRop, 40, 4, 4);
468 TEST_FIELD(EMRBITBLT, LONG, xSrc, 44, 4, 4);
469 TEST_FIELD(EMRBITBLT, LONG, ySrc, 48, 4, 4);
470 TEST_FIELD(EMRBITBLT, XFORM, xformSrc, 52, 24, 4);
471 TEST_FIELD(EMRBITBLT, COLORREF, crBkColorSrc, 76, 4, 4);
472 TEST_FIELD(EMRBITBLT, DWORD, iUsageSrc, 80, 4, 4);
473 TEST_FIELD(EMRBITBLT, DWORD, offBmiSrc, 84, 4, 4);
474 TEST_FIELD(EMRBITBLT, DWORD, cbBmiSrc, 88, 4, 4);
475 TEST_FIELD(EMRBITBLT, DWORD, offBitsSrc, 92, 4, 4);
476 TEST_FIELD(EMRBITBLT, DWORD, cbBitsSrc, 96, 4, 4);
479 static void test_pack_EMRCHORD(void)
481 /* EMRCHORD (pack 4) */
482 TEST_TYPE(EMRCHORD, 40, 4);
483 TEST_FIELD(EMRCHORD, EMR, emr, 0, 8, 4);
484 TEST_FIELD(EMRCHORD, RECTL, rclBox, 8, 16, 4);
485 TEST_FIELD(EMRCHORD, POINTL, ptlStart, 24, 8, 4);
486 TEST_FIELD(EMRCHORD, POINTL, ptlEnd, 32, 8, 4);
489 static void test_pack_EMRCLOSEFIGURE(void)
491 /* EMRCLOSEFIGURE (pack 4) */
492 TEST_TYPE(EMRCLOSEFIGURE, 8, 4);
493 TEST_FIELD(EMRCLOSEFIGURE, EMR, emr, 0, 8, 4);
496 static void test_pack_EMRCREATEBRUSHINDIRECT(void)
498 /* EMRCREATEBRUSHINDIRECT (pack 4) */
499 TEST_TYPE(EMRCREATEBRUSHINDIRECT, 24, 4);
500 TEST_FIELD(EMRCREATEBRUSHINDIRECT, EMR, emr, 0, 8, 4);
501 TEST_FIELD(EMRCREATEBRUSHINDIRECT, DWORD, ihBrush, 8, 4, 4);
502 TEST_FIELD(EMRCREATEBRUSHINDIRECT, LOGBRUSH32, lb, 12, 12, 4);
505 static void test_pack_EMRCREATECOLORSPACE(void)
507 /* EMRCREATECOLORSPACE (pack 4) */
508 TEST_TYPE(EMRCREATECOLORSPACE, 340, 4);
509 TEST_FIELD(EMRCREATECOLORSPACE, EMR, emr, 0, 8, 4);
510 TEST_FIELD(EMRCREATECOLORSPACE, DWORD, ihCS, 8, 4, 4);
511 TEST_FIELD(EMRCREATECOLORSPACE, LOGCOLORSPACEA, lcs, 12, 328, 4);
514 static void test_pack_EMRCREATECOLORSPACEW(void)
516 /* EMRCREATECOLORSPACEW (pack 4) */
517 TEST_TYPE(EMRCREATECOLORSPACEW, 612, 4);
518 TEST_FIELD(EMRCREATECOLORSPACEW, EMR, emr, 0, 8, 4);
519 TEST_FIELD(EMRCREATECOLORSPACEW, DWORD, ihCS, 8, 4, 4);
520 TEST_FIELD(EMRCREATECOLORSPACEW, LOGCOLORSPACEW, lcs, 12, 588, 4);
521 TEST_FIELD(EMRCREATECOLORSPACEW, DWORD, dwFlags, 600, 4, 4);
522 TEST_FIELD(EMRCREATECOLORSPACEW, DWORD, cbData, 604, 4, 4);
523 TEST_FIELD(EMRCREATECOLORSPACEW, BYTE[1], Data, 608, 1, 1);
526 static void test_pack_EMRCREATEDIBPATTERNBRUSHPT(void)
528 /* EMRCREATEDIBPATTERNBRUSHPT (pack 4) */
529 TEST_TYPE(EMRCREATEDIBPATTERNBRUSHPT, 32, 4);
530 TEST_FIELD(EMRCREATEDIBPATTERNBRUSHPT, EMR, emr, 0, 8, 4);
531 TEST_FIELD(EMRCREATEDIBPATTERNBRUSHPT, DWORD, ihBrush, 8, 4, 4);
532 TEST_FIELD(EMRCREATEDIBPATTERNBRUSHPT, DWORD, iUsage, 12, 4, 4);
533 TEST_FIELD(EMRCREATEDIBPATTERNBRUSHPT, DWORD, offBmi, 16, 4, 4);
534 TEST_FIELD(EMRCREATEDIBPATTERNBRUSHPT, DWORD, cbBmi, 20, 4, 4);
535 TEST_FIELD(EMRCREATEDIBPATTERNBRUSHPT, DWORD, offBits, 24, 4, 4);
536 TEST_FIELD(EMRCREATEDIBPATTERNBRUSHPT, DWORD, cbBits, 28, 4, 4);
539 static void test_pack_EMRCREATEMONOBRUSH(void)
541 /* EMRCREATEMONOBRUSH (pack 4) */
542 TEST_TYPE(EMRCREATEMONOBRUSH, 32, 4);
543 TEST_FIELD(EMRCREATEMONOBRUSH, EMR, emr, 0, 8, 4);
544 TEST_FIELD(EMRCREATEMONOBRUSH, DWORD, ihBrush, 8, 4, 4);
545 TEST_FIELD(EMRCREATEMONOBRUSH, DWORD, iUsage, 12, 4, 4);
546 TEST_FIELD(EMRCREATEMONOBRUSH, DWORD, offBmi, 16, 4, 4);
547 TEST_FIELD(EMRCREATEMONOBRUSH, DWORD, cbBmi, 20, 4, 4);
548 TEST_FIELD(EMRCREATEMONOBRUSH, DWORD, offBits, 24, 4, 4);
549 TEST_FIELD(EMRCREATEMONOBRUSH, DWORD, cbBits, 28, 4, 4);
552 static void test_pack_EMRCREATEPEN(void)
554 /* EMRCREATEPEN (pack 4) */
555 TEST_TYPE(EMRCREATEPEN, 28, 4);
556 TEST_FIELD(EMRCREATEPEN, EMR, emr, 0, 8, 4);
557 TEST_FIELD(EMRCREATEPEN, DWORD, ihPen, 8, 4, 4);
558 TEST_FIELD(EMRCREATEPEN, LOGPEN, lopn, 12, 16, 4);
561 static void test_pack_EMRDELETECOLORSPACE(void)
563 /* EMRDELETECOLORSPACE (pack 4) */
564 TEST_TYPE(EMRDELETECOLORSPACE, 12, 4);
565 TEST_FIELD(EMRDELETECOLORSPACE, EMR, emr, 0, 8, 4);
566 TEST_FIELD(EMRDELETECOLORSPACE, DWORD, ihCS, 8, 4, 4);
569 static void test_pack_EMRDELETEOBJECT(void)
571 /* EMRDELETEOBJECT (pack 4) */
572 TEST_TYPE(EMRDELETEOBJECT, 12, 4);
573 TEST_FIELD(EMRDELETEOBJECT, EMR, emr, 0, 8, 4);
574 TEST_FIELD(EMRDELETEOBJECT, DWORD, ihObject, 8, 4, 4);
577 static void test_pack_EMRELLIPSE(void)
579 /* EMRELLIPSE (pack 4) */
580 TEST_TYPE(EMRELLIPSE, 24, 4);
581 TEST_FIELD(EMRELLIPSE, EMR, emr, 0, 8, 4);
582 TEST_FIELD(EMRELLIPSE, RECTL, rclBox, 8, 16, 4);
585 static void test_pack_EMRENDPATH(void)
587 /* EMRENDPATH (pack 4) */
588 TEST_TYPE(EMRENDPATH, 8, 4);
589 TEST_FIELD(EMRENDPATH, EMR, emr, 0, 8, 4);
592 static void test_pack_EMREOF(void)
594 /* EMREOF (pack 4) */
595 TEST_TYPE(EMREOF, 20, 4);
596 TEST_FIELD(EMREOF, EMR, emr, 0, 8, 4);
597 TEST_FIELD(EMREOF, DWORD, nPalEntries, 8, 4, 4);
598 TEST_FIELD(EMREOF, DWORD, offPalEntries, 12, 4, 4);
599 TEST_FIELD(EMREOF, DWORD, nSizeLast, 16, 4, 4);
602 static void test_pack_EMREXCLUDECLIPRECT(void)
604 /* EMREXCLUDECLIPRECT (pack 4) */
605 TEST_TYPE(EMREXCLUDECLIPRECT, 24, 4);
606 TEST_FIELD(EMREXCLUDECLIPRECT, EMR, emr, 0, 8, 4);
607 TEST_FIELD(EMREXCLUDECLIPRECT, RECTL, rclClip, 8, 16, 4);
610 static void test_pack_EMREXTCREATEFONTINDIRECTW(void)
612 /* EMREXTCREATEFONTINDIRECTW (pack 4) */
613 TEST_TYPE(EMREXTCREATEFONTINDIRECTW, 332, 4);
614 TEST_FIELD(EMREXTCREATEFONTINDIRECTW, EMR, emr, 0, 8, 4);
615 TEST_FIELD(EMREXTCREATEFONTINDIRECTW, DWORD, ihFont, 8, 4, 4);
616 TEST_FIELD(EMREXTCREATEFONTINDIRECTW, EXTLOGFONTW, elfw, 12, 320, 4);
619 static void test_pack_EMREXTCREATEPEN(void)
621 /* EMREXTCREATEPEN (pack 4) */
622 TEST_TYPE(EMREXTCREATEPEN, 56, 4);
623 TEST_FIELD(EMREXTCREATEPEN, EMR, emr, 0, 8, 4);
624 TEST_FIELD(EMREXTCREATEPEN, DWORD, ihPen, 8, 4, 4);
625 TEST_FIELD(EMREXTCREATEPEN, DWORD, offBmi, 12, 4, 4);
626 TEST_FIELD(EMREXTCREATEPEN, DWORD, cbBmi, 16, 4, 4);
627 TEST_FIELD(EMREXTCREATEPEN, DWORD, offBits, 20, 4, 4);
628 TEST_FIELD(EMREXTCREATEPEN, DWORD, cbBits, 24, 4, 4);
629 TEST_FIELD(EMREXTCREATEPEN, EXTLOGPEN, elp, 28, 28, 4);
632 static void test_pack_EMREXTFLOODFILL(void)
634 /* EMREXTFLOODFILL (pack 4) */
635 TEST_TYPE(EMREXTFLOODFILL, 24, 4);
636 TEST_FIELD(EMREXTFLOODFILL, EMR, emr, 0, 8, 4);
637 TEST_FIELD(EMREXTFLOODFILL, POINTL, ptlStart, 8, 8, 4);
638 TEST_FIELD(EMREXTFLOODFILL, COLORREF, crColor, 16, 4, 4);
639 TEST_FIELD(EMREXTFLOODFILL, DWORD, iMode, 20, 4, 4);
642 static void test_pack_EMREXTSELECTCLIPRGN(void)
644 /* EMREXTSELECTCLIPRGN (pack 4) */
645 TEST_TYPE(EMREXTSELECTCLIPRGN, 20, 4);
646 TEST_FIELD(EMREXTSELECTCLIPRGN, EMR, emr, 0, 8, 4);
647 TEST_FIELD(EMREXTSELECTCLIPRGN, DWORD, cbRgnData, 8, 4, 4);
648 TEST_FIELD(EMREXTSELECTCLIPRGN, DWORD, iMode, 12, 4, 4);
649 TEST_FIELD(EMREXTSELECTCLIPRGN, BYTE[1], RgnData, 16, 1, 1);
652 static void test_pack_EMREXTTEXTOUTA(void)
654 /* EMREXTTEXTOUTA (pack 4) */
655 TEST_TYPE(EMREXTTEXTOUTA, 76, 4);
656 TEST_FIELD(EMREXTTEXTOUTA, EMR, emr, 0, 8, 4);
657 TEST_FIELD(EMREXTTEXTOUTA, RECTL, rclBounds, 8, 16, 4);
658 TEST_FIELD(EMREXTTEXTOUTA, DWORD, iGraphicsMode, 24, 4, 4);
659 TEST_FIELD(EMREXTTEXTOUTA, FLOAT, exScale, 28, 4, 4);
660 TEST_FIELD(EMREXTTEXTOUTA, FLOAT, eyScale, 32, 4, 4);
661 TEST_FIELD(EMREXTTEXTOUTA, EMRTEXT, emrtext, 36, 40, 4);
664 static void test_pack_EMREXTTEXTOUTW(void)
666 /* EMREXTTEXTOUTW (pack 4) */
667 TEST_TYPE(EMREXTTEXTOUTW, 76, 4);
668 TEST_FIELD(EMREXTTEXTOUTW, EMR, emr, 0, 8, 4);
669 TEST_FIELD(EMREXTTEXTOUTW, RECTL, rclBounds, 8, 16, 4);
670 TEST_FIELD(EMREXTTEXTOUTW, DWORD, iGraphicsMode, 24, 4, 4);
671 TEST_FIELD(EMREXTTEXTOUTW, FLOAT, exScale, 28, 4, 4);
672 TEST_FIELD(EMREXTTEXTOUTW, FLOAT, eyScale, 32, 4, 4);
673 TEST_FIELD(EMREXTTEXTOUTW, EMRTEXT, emrtext, 36, 40, 4);
676 static void test_pack_EMRFILLPATH(void)
678 /* EMRFILLPATH (pack 4) */
679 TEST_TYPE(EMRFILLPATH, 24, 4);
680 TEST_FIELD(EMRFILLPATH, EMR, emr, 0, 8, 4);
681 TEST_FIELD(EMRFILLPATH, RECTL, rclBounds, 8, 16, 4);
684 static void test_pack_EMRFILLRGN(void)
686 /* EMRFILLRGN (pack 4) */
687 TEST_TYPE(EMRFILLRGN, 36, 4);
688 TEST_FIELD(EMRFILLRGN, EMR, emr, 0, 8, 4);
689 TEST_FIELD(EMRFILLRGN, RECTL, rclBounds, 8, 16, 4);
690 TEST_FIELD(EMRFILLRGN, DWORD, cbRgnData, 24, 4, 4);
691 TEST_FIELD(EMRFILLRGN, DWORD, ihBrush, 28, 4, 4);
692 TEST_FIELD(EMRFILLRGN, BYTE[1], RgnData, 32, 1, 1);
695 static void test_pack_EMRFLATTENPATH(void)
697 /* EMRFLATTENPATH (pack 4) */
698 TEST_TYPE(EMRFLATTENPATH, 8, 4);
699 TEST_FIELD(EMRFLATTENPATH, EMR, emr, 0, 8, 4);
702 static void test_pack_EMRFORMAT(void)
704 /* EMRFORMAT (pack 4) */
705 TEST_TYPE(EMRFORMAT, 16, 4);
706 TEST_FIELD(EMRFORMAT, DWORD, dSignature, 0, 4, 4);
707 TEST_FIELD(EMRFORMAT, DWORD, nVersion, 4, 4, 4);
708 TEST_FIELD(EMRFORMAT, DWORD, cbData, 8, 4, 4);
709 TEST_FIELD(EMRFORMAT, DWORD, offData, 12, 4, 4);
712 static void test_pack_EMRFRAMERGN(void)
714 /* EMRFRAMERGN (pack 4) */
715 TEST_TYPE(EMRFRAMERGN, 44, 4);
716 TEST_FIELD(EMRFRAMERGN, EMR, emr, 0, 8, 4);
717 TEST_FIELD(EMRFRAMERGN, RECTL, rclBounds, 8, 16, 4);
718 TEST_FIELD(EMRFRAMERGN, DWORD, cbRgnData, 24, 4, 4);
719 TEST_FIELD(EMRFRAMERGN, DWORD, ihBrush, 28, 4, 4);
720 TEST_FIELD(EMRFRAMERGN, SIZEL, szlStroke, 32, 8, 4);
721 TEST_FIELD(EMRFRAMERGN, BYTE[1], RgnData, 40, 1, 1);
724 static void test_pack_EMRGDICOMMENT(void)
726 /* EMRGDICOMMENT (pack 4) */
727 TEST_TYPE(EMRGDICOMMENT, 16, 4);
728 TEST_FIELD(EMRGDICOMMENT, EMR, emr, 0, 8, 4);
729 TEST_FIELD(EMRGDICOMMENT, DWORD, cbData, 8, 4, 4);
730 TEST_FIELD(EMRGDICOMMENT, BYTE[1], Data, 12, 1, 1);
733 static void test_pack_EMRGLSBOUNDEDRECORD(void)
735 /* EMRGLSBOUNDEDRECORD (pack 4) */
736 TEST_TYPE(EMRGLSBOUNDEDRECORD, 32, 4);
737 TEST_FIELD(EMRGLSBOUNDEDRECORD, EMR, emr, 0, 8, 4);
738 TEST_FIELD(EMRGLSBOUNDEDRECORD, RECTL, rclBounds, 8, 16, 4);
739 TEST_FIELD(EMRGLSBOUNDEDRECORD, DWORD, cbData, 24, 4, 4);
740 TEST_FIELD(EMRGLSBOUNDEDRECORD, BYTE[1], Data, 28, 1, 1);
743 static void test_pack_EMRGLSRECORD(void)
745 /* EMRGLSRECORD (pack 4) */
746 TEST_TYPE(EMRGLSRECORD, 16, 4);
747 TEST_FIELD(EMRGLSRECORD, EMR, emr, 0, 8, 4);
748 TEST_FIELD(EMRGLSRECORD, DWORD, cbData, 8, 4, 4);
749 TEST_FIELD(EMRGLSRECORD, BYTE[1], Data, 12, 1, 1);
752 static void test_pack_EMRINTERSECTCLIPRECT(void)
754 /* EMRINTERSECTCLIPRECT (pack 4) */
755 TEST_TYPE(EMRINTERSECTCLIPRECT, 24, 4);
756 TEST_FIELD(EMRINTERSECTCLIPRECT, EMR, emr, 0, 8, 4);
757 TEST_FIELD(EMRINTERSECTCLIPRECT, RECTL, rclClip, 8, 16, 4);
760 static void test_pack_EMRINVERTRGN(void)
762 /* EMRINVERTRGN (pack 4) */
763 TEST_TYPE(EMRINVERTRGN, 32, 4);
764 TEST_FIELD(EMRINVERTRGN, EMR, emr, 0, 8, 4);
765 TEST_FIELD(EMRINVERTRGN, RECTL, rclBounds, 8, 16, 4);
766 TEST_FIELD(EMRINVERTRGN, DWORD, cbRgnData, 24, 4, 4);
767 TEST_FIELD(EMRINVERTRGN, BYTE[1], RgnData, 28, 1, 1);
770 static void test_pack_EMRLINETO(void)
772 /* EMRLINETO (pack 4) */
773 TEST_TYPE(EMRLINETO, 16, 4);
774 TEST_FIELD(EMRLINETO, EMR, emr, 0, 8, 4);
775 TEST_FIELD(EMRLINETO, POINTL, ptl, 8, 8, 4);
778 static void test_pack_EMRMASKBLT(void)
780 /* EMRMASKBLT (pack 4) */
781 TEST_TYPE(EMRMASKBLT, 128, 4);
782 TEST_FIELD(EMRMASKBLT, EMR, emr, 0, 8, 4);
783 TEST_FIELD(EMRMASKBLT, RECTL, rclBounds, 8, 16, 4);
784 TEST_FIELD(EMRMASKBLT, LONG, xDest, 24, 4, 4);
785 TEST_FIELD(EMRMASKBLT, LONG, yDest, 28, 4, 4);
786 TEST_FIELD(EMRMASKBLT, LONG, cxDest, 32, 4, 4);
787 TEST_FIELD(EMRMASKBLT, LONG, cyDest, 36, 4, 4);
788 TEST_FIELD(EMRMASKBLT, DWORD, dwRop, 40, 4, 4);
789 TEST_FIELD(EMRMASKBLT, LONG, xSrc, 44, 4, 4);
790 TEST_FIELD(EMRMASKBLT, LONG, ySrc, 48, 4, 4);
791 TEST_FIELD(EMRMASKBLT, XFORM, xformSrc, 52, 24, 4);
792 TEST_FIELD(EMRMASKBLT, COLORREF, crBkColorSrc, 76, 4, 4);
793 TEST_FIELD(EMRMASKBLT, DWORD, iUsageSrc, 80, 4, 4);
794 TEST_FIELD(EMRMASKBLT, DWORD, offBmiSrc, 84, 4, 4);
795 TEST_FIELD(EMRMASKBLT, DWORD, cbBmiSrc, 88, 4, 4);
796 TEST_FIELD(EMRMASKBLT, DWORD, offBitsSrc, 92, 4, 4);
797 TEST_FIELD(EMRMASKBLT, DWORD, cbBitsSrc, 96, 4, 4);
798 TEST_FIELD(EMRMASKBLT, LONG, xMask, 100, 4, 4);
799 TEST_FIELD(EMRMASKBLT, LONG, yMask, 104, 4, 4);
800 TEST_FIELD(EMRMASKBLT, DWORD, iUsageMask, 108, 4, 4);
801 TEST_FIELD(EMRMASKBLT, DWORD, offBmiMask, 112, 4, 4);
802 TEST_FIELD(EMRMASKBLT, DWORD, cbBmiMask, 116, 4, 4);
803 TEST_FIELD(EMRMASKBLT, DWORD, offBitsMask, 120, 4, 4);
804 TEST_FIELD(EMRMASKBLT, DWORD, cbBitsMask, 124, 4, 4);
807 static void test_pack_EMRMODIFYWORLDTRANSFORM(void)
809 /* EMRMODIFYWORLDTRANSFORM (pack 4) */
810 TEST_TYPE(EMRMODIFYWORLDTRANSFORM, 36, 4);
811 TEST_FIELD(EMRMODIFYWORLDTRANSFORM, EMR, emr, 0, 8, 4);
812 TEST_FIELD(EMRMODIFYWORLDTRANSFORM, XFORM, xform, 8, 24, 4);
813 TEST_FIELD(EMRMODIFYWORLDTRANSFORM, DWORD, iMode, 32, 4, 4);
816 static void test_pack_EMRMOVETOEX(void)
818 /* EMRMOVETOEX (pack 4) */
819 TEST_TYPE(EMRMOVETOEX, 16, 4);
820 TEST_FIELD(EMRMOVETOEX, EMR, emr, 0, 8, 4);
821 TEST_FIELD(EMRMOVETOEX, POINTL, ptl, 8, 8, 4);
824 static void test_pack_EMROFFSETCLIPRGN(void)
826 /* EMROFFSETCLIPRGN (pack 4) */
827 TEST_TYPE(EMROFFSETCLIPRGN, 16, 4);
828 TEST_FIELD(EMROFFSETCLIPRGN, EMR, emr, 0, 8, 4);
829 TEST_FIELD(EMROFFSETCLIPRGN, POINTL, ptlOffset, 8, 8, 4);
832 static void test_pack_EMRPAINTRGN(void)
834 /* EMRPAINTRGN (pack 4) */
835 TEST_TYPE(EMRPAINTRGN, 32, 4);
836 TEST_FIELD(EMRPAINTRGN, EMR, emr, 0, 8, 4);
837 TEST_FIELD(EMRPAINTRGN, RECTL, rclBounds, 8, 16, 4);
838 TEST_FIELD(EMRPAINTRGN, DWORD, cbRgnData, 24, 4, 4);
839 TEST_FIELD(EMRPAINTRGN, BYTE[1], RgnData, 28, 1, 1);
842 static void test_pack_EMRPIE(void)
844 /* EMRPIE (pack 4) */
845 TEST_TYPE(EMRPIE, 40, 4);
846 TEST_FIELD(EMRPIE, EMR, emr, 0, 8, 4);
847 TEST_FIELD(EMRPIE, RECTL, rclBox, 8, 16, 4);
848 TEST_FIELD(EMRPIE, POINTL, ptlStart, 24, 8, 4);
849 TEST_FIELD(EMRPIE, POINTL, ptlEnd, 32, 8, 4);
852 static void test_pack_EMRPIXELFORMAT(void)
854 /* EMRPIXELFORMAT (pack 4) */
855 TEST_TYPE(EMRPIXELFORMAT, 48, 4);
856 TEST_FIELD(EMRPIXELFORMAT, EMR, emr, 0, 8, 4);
857 TEST_FIELD(EMRPIXELFORMAT, PIXELFORMATDESCRIPTOR, pfd, 8, 40, 4);
860 static void test_pack_EMRPLGBLT(void)
862 /* EMRPLGBLT (pack 4) */
863 TEST_TYPE(EMRPLGBLT, 140, 4);
864 TEST_FIELD(EMRPLGBLT, EMR, emr, 0, 8, 4);
865 TEST_FIELD(EMRPLGBLT, RECTL, rclBounds, 8, 16, 4);
866 TEST_FIELD(EMRPLGBLT, POINTL[3], aptlDest, 24, 24, 4);
867 TEST_FIELD(EMRPLGBLT, LONG, xSrc, 48, 4, 4);
868 TEST_FIELD(EMRPLGBLT, LONG, ySrc, 52, 4, 4);
869 TEST_FIELD(EMRPLGBLT, LONG, cxSrc, 56, 4, 4);
870 TEST_FIELD(EMRPLGBLT, LONG, cySrc, 60, 4, 4);
871 TEST_FIELD(EMRPLGBLT, XFORM, xformSrc, 64, 24, 4);
872 TEST_FIELD(EMRPLGBLT, COLORREF, crBkColorSrc, 88, 4, 4);
873 TEST_FIELD(EMRPLGBLT, DWORD, iUsageSrc, 92, 4, 4);
874 TEST_FIELD(EMRPLGBLT, DWORD, offBmiSrc, 96, 4, 4);
875 TEST_FIELD(EMRPLGBLT, DWORD, cbBmiSrc, 100, 4, 4);
876 TEST_FIELD(EMRPLGBLT, DWORD, offBitsSrc, 104, 4, 4);
877 TEST_FIELD(EMRPLGBLT, DWORD, cbBitsSrc, 108, 4, 4);
878 TEST_FIELD(EMRPLGBLT, LONG, xMask, 112, 4, 4);
879 TEST_FIELD(EMRPLGBLT, LONG, yMask, 116, 4, 4);
880 TEST_FIELD(EMRPLGBLT, DWORD, iUsageMask, 120, 4, 4);
881 TEST_FIELD(EMRPLGBLT, DWORD, offBmiMask, 124, 4, 4);
882 TEST_FIELD(EMRPLGBLT, DWORD, cbBmiMask, 128, 4, 4);
883 TEST_FIELD(EMRPLGBLT, DWORD, offBitsMask, 132, 4, 4);
884 TEST_FIELD(EMRPLGBLT, DWORD, cbBitsMask, 136, 4, 4);
887 static void test_pack_EMRPOLYBEZIER(void)
889 /* EMRPOLYBEZIER (pack 4) */
890 TEST_TYPE(EMRPOLYBEZIER, 36, 4);
891 TEST_FIELD(EMRPOLYBEZIER, EMR, emr, 0, 8, 4);
892 TEST_FIELD(EMRPOLYBEZIER, RECTL, rclBounds, 8, 16, 4);
893 TEST_FIELD(EMRPOLYBEZIER, DWORD, cptl, 24, 4, 4);
894 TEST_FIELD(EMRPOLYBEZIER, POINTL[1], aptl, 28, 8, 4);
897 static void test_pack_EMRPOLYBEZIER16(void)
899 /* EMRPOLYBEZIER16 (pack 4) */
900 TEST_TYPE(EMRPOLYBEZIER16, 32, 4);
901 TEST_FIELD(EMRPOLYBEZIER16, EMR, emr, 0, 8, 4);
902 TEST_FIELD(EMRPOLYBEZIER16, RECTL, rclBounds, 8, 16, 4);
903 TEST_FIELD(EMRPOLYBEZIER16, DWORD, cpts, 24, 4, 4);
904 TEST_FIELD(EMRPOLYBEZIER16, POINTS[1], apts, 28, 4, 2);
907 static void test_pack_EMRPOLYBEZIERTO(void)
909 /* EMRPOLYBEZIERTO (pack 4) */
910 TEST_TYPE(EMRPOLYBEZIERTO, 36, 4);
911 TEST_FIELD(EMRPOLYBEZIERTO, EMR, emr, 0, 8, 4);
912 TEST_FIELD(EMRPOLYBEZIERTO, RECTL, rclBounds, 8, 16, 4);
913 TEST_FIELD(EMRPOLYBEZIERTO, DWORD, cptl, 24, 4, 4);
914 TEST_FIELD(EMRPOLYBEZIERTO, POINTL[1], aptl, 28, 8, 4);
917 static void test_pack_EMRPOLYBEZIERTO16(void)
919 /* EMRPOLYBEZIERTO16 (pack 4) */
920 TEST_TYPE(EMRPOLYBEZIERTO16, 32, 4);
921 TEST_FIELD(EMRPOLYBEZIERTO16, EMR, emr, 0, 8, 4);
922 TEST_FIELD(EMRPOLYBEZIERTO16, RECTL, rclBounds, 8, 16, 4);
923 TEST_FIELD(EMRPOLYBEZIERTO16, DWORD, cpts, 24, 4, 4);
924 TEST_FIELD(EMRPOLYBEZIERTO16, POINTS[1], apts, 28, 4, 2);
927 static void test_pack_EMRPOLYDRAW(void)
929 /* EMRPOLYDRAW (pack 4) */
930 TEST_TYPE(EMRPOLYDRAW, 40, 4);
931 TEST_FIELD(EMRPOLYDRAW, EMR, emr, 0, 8, 4);
932 TEST_FIELD(EMRPOLYDRAW, RECTL, rclBounds, 8, 16, 4);
933 TEST_FIELD(EMRPOLYDRAW, DWORD, cptl, 24, 4, 4);
934 TEST_FIELD(EMRPOLYDRAW, POINTL[1], aptl, 28, 8, 4);
935 TEST_FIELD(EMRPOLYDRAW, BYTE[1], abTypes, 36, 1, 1);
938 static void test_pack_EMRPOLYDRAW16(void)
940 /* EMRPOLYDRAW16 (pack 4) */
941 TEST_TYPE(EMRPOLYDRAW16, 36, 4);
942 TEST_FIELD(EMRPOLYDRAW16, EMR, emr, 0, 8, 4);
943 TEST_FIELD(EMRPOLYDRAW16, RECTL, rclBounds, 8, 16, 4);
944 TEST_FIELD(EMRPOLYDRAW16, DWORD, cpts, 24, 4, 4);
945 TEST_FIELD(EMRPOLYDRAW16, POINTS[1], apts, 28, 4, 2);
946 TEST_FIELD(EMRPOLYDRAW16, BYTE[1], abTypes, 32, 1, 1);
949 static void test_pack_EMRPOLYGON(void)
951 /* EMRPOLYGON (pack 4) */
952 TEST_TYPE(EMRPOLYGON, 36, 4);
953 TEST_FIELD(EMRPOLYGON, EMR, emr, 0, 8, 4);
954 TEST_FIELD(EMRPOLYGON, RECTL, rclBounds, 8, 16, 4);
955 TEST_FIELD(EMRPOLYGON, DWORD, cptl, 24, 4, 4);
956 TEST_FIELD(EMRPOLYGON, POINTL[1], aptl, 28, 8, 4);
959 static void test_pack_EMRPOLYGON16(void)
961 /* EMRPOLYGON16 (pack 4) */
962 TEST_TYPE(EMRPOLYGON16, 32, 4);
963 TEST_FIELD(EMRPOLYGON16, EMR, emr, 0, 8, 4);
964 TEST_FIELD(EMRPOLYGON16, RECTL, rclBounds, 8, 16, 4);
965 TEST_FIELD(EMRPOLYGON16, DWORD, cpts, 24, 4, 4);
966 TEST_FIELD(EMRPOLYGON16, POINTS[1], apts, 28, 4, 2);
969 static void test_pack_EMRPOLYLINE(void)
971 /* EMRPOLYLINE (pack 4) */
972 TEST_TYPE(EMRPOLYLINE, 36, 4);
973 TEST_FIELD(EMRPOLYLINE, EMR, emr, 0, 8, 4);
974 TEST_FIELD(EMRPOLYLINE, RECTL, rclBounds, 8, 16, 4);
975 TEST_FIELD(EMRPOLYLINE, DWORD, cptl, 24, 4, 4);
976 TEST_FIELD(EMRPOLYLINE, POINTL[1], aptl, 28, 8, 4);
979 static void test_pack_EMRPOLYLINE16(void)
981 /* EMRPOLYLINE16 (pack 4) */
982 TEST_TYPE(EMRPOLYLINE16, 32, 4);
983 TEST_FIELD(EMRPOLYLINE16, EMR, emr, 0, 8, 4);
984 TEST_FIELD(EMRPOLYLINE16, RECTL, rclBounds, 8, 16, 4);
985 TEST_FIELD(EMRPOLYLINE16, DWORD, cpts, 24, 4, 4);
986 TEST_FIELD(EMRPOLYLINE16, POINTS[1], apts, 28, 4, 2);
989 static void test_pack_EMRPOLYLINETO(void)
991 /* EMRPOLYLINETO (pack 4) */
992 TEST_TYPE(EMRPOLYLINETO, 36, 4);
993 TEST_FIELD(EMRPOLYLINETO, EMR, emr, 0, 8, 4);
994 TEST_FIELD(EMRPOLYLINETO, RECTL, rclBounds, 8, 16, 4);
995 TEST_FIELD(EMRPOLYLINETO, DWORD, cptl, 24, 4, 4);
996 TEST_FIELD(EMRPOLYLINETO, POINTL[1], aptl, 28, 8, 4);
999 static void test_pack_EMRPOLYLINETO16(void)
1001 /* EMRPOLYLINETO16 (pack 4) */
1002 TEST_TYPE(EMRPOLYLINETO16, 32, 4);
1003 TEST_FIELD(EMRPOLYLINETO16, EMR, emr, 0, 8, 4);
1004 TEST_FIELD(EMRPOLYLINETO16, RECTL, rclBounds, 8, 16, 4);
1005 TEST_FIELD(EMRPOLYLINETO16, DWORD, cpts, 24, 4, 4);
1006 TEST_FIELD(EMRPOLYLINETO16, POINTS[1], apts, 28, 4, 2);
1009 static void test_pack_EMRPOLYPOLYGON(void)
1011 /* EMRPOLYPOLYGON (pack 4) */
1012 TEST_TYPE(EMRPOLYPOLYGON, 44, 4);
1013 TEST_FIELD(EMRPOLYPOLYGON, EMR, emr, 0, 8, 4);
1014 TEST_FIELD(EMRPOLYPOLYGON, RECTL, rclBounds, 8, 16, 4);
1015 TEST_FIELD(EMRPOLYPOLYGON, DWORD, nPolys, 24, 4, 4);
1016 TEST_FIELD(EMRPOLYPOLYGON, DWORD, cptl, 28, 4, 4);
1017 TEST_FIELD(EMRPOLYPOLYGON, DWORD[1], aPolyCounts, 32, 4, 4);
1018 TEST_FIELD(EMRPOLYPOLYGON, POINTL[1], aptl, 36, 8, 4);
1021 static void test_pack_EMRPOLYPOLYGON16(void)
1023 /* EMRPOLYPOLYGON16 (pack 4) */
1024 TEST_TYPE(EMRPOLYPOLYGON16, 40, 4);
1025 TEST_FIELD(EMRPOLYPOLYGON16, EMR, emr, 0, 8, 4);
1026 TEST_FIELD(EMRPOLYPOLYGON16, RECTL, rclBounds, 8, 16, 4);
1027 TEST_FIELD(EMRPOLYPOLYGON16, DWORD, nPolys, 24, 4, 4);
1028 TEST_FIELD(EMRPOLYPOLYGON16, DWORD, cpts, 28, 4, 4);
1029 TEST_FIELD(EMRPOLYPOLYGON16, DWORD[1], aPolyCounts, 32, 4, 4);
1030 TEST_FIELD(EMRPOLYPOLYGON16, POINTS[1], apts, 36, 4, 2);
1033 static void test_pack_EMRPOLYPOLYLINE(void)
1035 /* EMRPOLYPOLYLINE (pack 4) */
1036 TEST_TYPE(EMRPOLYPOLYLINE, 44, 4);
1037 TEST_FIELD(EMRPOLYPOLYLINE, EMR, emr, 0, 8, 4);
1038 TEST_FIELD(EMRPOLYPOLYLINE, RECTL, rclBounds, 8, 16, 4);
1039 TEST_FIELD(EMRPOLYPOLYLINE, DWORD, nPolys, 24, 4, 4);
1040 TEST_FIELD(EMRPOLYPOLYLINE, DWORD, cptl, 28, 4, 4);
1041 TEST_FIELD(EMRPOLYPOLYLINE, DWORD[1], aPolyCounts, 32, 4, 4);
1042 TEST_FIELD(EMRPOLYPOLYLINE, POINTL[1], aptl, 36, 8, 4);
1045 static void test_pack_EMRPOLYPOLYLINE16(void)
1047 /* EMRPOLYPOLYLINE16 (pack 4) */
1048 TEST_TYPE(EMRPOLYPOLYLINE16, 40, 4);
1049 TEST_FIELD(EMRPOLYPOLYLINE16, EMR, emr, 0, 8, 4);
1050 TEST_FIELD(EMRPOLYPOLYLINE16, RECTL, rclBounds, 8, 16, 4);
1051 TEST_FIELD(EMRPOLYPOLYLINE16, DWORD, nPolys, 24, 4, 4);
1052 TEST_FIELD(EMRPOLYPOLYLINE16, DWORD, cpts, 28, 4, 4);
1053 TEST_FIELD(EMRPOLYPOLYLINE16, DWORD[1], aPolyCounts, 32, 4, 4);
1054 TEST_FIELD(EMRPOLYPOLYLINE16, POINTS[1], apts, 36, 4, 2);
1057 static void test_pack_EMRPOLYTEXTOUTA(void)
1059 /* EMRPOLYTEXTOUTA (pack 4) */
1060 TEST_TYPE(EMRPOLYTEXTOUTA, 80, 4);
1061 TEST_FIELD(EMRPOLYTEXTOUTA, EMR, emr, 0, 8, 4);
1062 TEST_FIELD(EMRPOLYTEXTOUTA, RECTL, rclBounds, 8, 16, 4);
1063 TEST_FIELD(EMRPOLYTEXTOUTA, DWORD, iGraphicsMode, 24, 4, 4);
1064 TEST_FIELD(EMRPOLYTEXTOUTA, FLOAT, exScale, 28, 4, 4);
1065 TEST_FIELD(EMRPOLYTEXTOUTA, FLOAT, eyScale, 32, 4, 4);
1066 TEST_FIELD(EMRPOLYTEXTOUTA, LONG, cStrings, 36, 4, 4);
1067 TEST_FIELD(EMRPOLYTEXTOUTA, EMRTEXT[1], aemrtext, 40, 40, 4);
1070 static void test_pack_EMRPOLYTEXTOUTW(void)
1072 /* EMRPOLYTEXTOUTW (pack 4) */
1073 TEST_TYPE(EMRPOLYTEXTOUTW, 80, 4);
1074 TEST_FIELD(EMRPOLYTEXTOUTW, EMR, emr, 0, 8, 4);
1075 TEST_FIELD(EMRPOLYTEXTOUTW, RECTL, rclBounds, 8, 16, 4);
1076 TEST_FIELD(EMRPOLYTEXTOUTW, DWORD, iGraphicsMode, 24, 4, 4);
1077 TEST_FIELD(EMRPOLYTEXTOUTW, FLOAT, exScale, 28, 4, 4);
1078 TEST_FIELD(EMRPOLYTEXTOUTW, FLOAT, eyScale, 32, 4, 4);
1079 TEST_FIELD(EMRPOLYTEXTOUTW, LONG, cStrings, 36, 4, 4);
1080 TEST_FIELD(EMRPOLYTEXTOUTW, EMRTEXT[1], aemrtext, 40, 40, 4);
1083 static void test_pack_EMRREALIZEPALETTE(void)
1085 /* EMRREALIZEPALETTE (pack 4) */
1086 TEST_TYPE(EMRREALIZEPALETTE, 8, 4);
1087 TEST_FIELD(EMRREALIZEPALETTE, EMR, emr, 0, 8, 4);
1090 static void test_pack_EMRRECTANGLE(void)
1092 /* EMRRECTANGLE (pack 4) */
1093 TEST_TYPE(EMRRECTANGLE, 24, 4);
1094 TEST_FIELD(EMRRECTANGLE, EMR, emr, 0, 8, 4);
1095 TEST_FIELD(EMRRECTANGLE, RECTL, rclBox, 8, 16, 4);
1098 static void test_pack_EMRRESIZEPALETTE(void)
1100 /* EMRRESIZEPALETTE (pack 4) */
1101 TEST_TYPE(EMRRESIZEPALETTE, 16, 4);
1102 TEST_FIELD(EMRRESIZEPALETTE, EMR, emr, 0, 8, 4);
1103 TEST_FIELD(EMRRESIZEPALETTE, DWORD, ihPal, 8, 4, 4);
1104 TEST_FIELD(EMRRESIZEPALETTE, DWORD, cEntries, 12, 4, 4);
1107 static void test_pack_EMRRESTOREDC(void)
1109 /* EMRRESTOREDC (pack 4) */
1110 TEST_TYPE(EMRRESTOREDC, 12, 4);
1111 TEST_FIELD(EMRRESTOREDC, EMR, emr, 0, 8, 4);
1112 TEST_FIELD(EMRRESTOREDC, LONG, iRelative, 8, 4, 4);
1115 static void test_pack_EMRROUNDRECT(void)
1117 /* EMRROUNDRECT (pack 4) */
1118 TEST_TYPE(EMRROUNDRECT, 32, 4);
1119 TEST_FIELD(EMRROUNDRECT, EMR, emr, 0, 8, 4);
1120 TEST_FIELD(EMRROUNDRECT, RECTL, rclBox, 8, 16, 4);
1121 TEST_FIELD(EMRROUNDRECT, SIZEL, szlCorner, 24, 8, 4);
1124 static void test_pack_EMRSAVEDC(void)
1126 /* EMRSAVEDC (pack 4) */
1127 TEST_TYPE(EMRSAVEDC, 8, 4);
1128 TEST_FIELD(EMRSAVEDC, EMR, emr, 0, 8, 4);
1131 static void test_pack_EMRSCALEVIEWPORTEXTEX(void)
1133 /* EMRSCALEVIEWPORTEXTEX (pack 4) */
1134 TEST_TYPE(EMRSCALEVIEWPORTEXTEX, 24, 4);
1135 TEST_FIELD(EMRSCALEVIEWPORTEXTEX, EMR, emr, 0, 8, 4);
1136 TEST_FIELD(EMRSCALEVIEWPORTEXTEX, LONG, xNum, 8, 4, 4);
1137 TEST_FIELD(EMRSCALEVIEWPORTEXTEX, LONG, xDenom, 12, 4, 4);
1138 TEST_FIELD(EMRSCALEVIEWPORTEXTEX, LONG, yNum, 16, 4, 4);
1139 TEST_FIELD(EMRSCALEVIEWPORTEXTEX, LONG, yDenom, 20, 4, 4);
1142 static void test_pack_EMRSCALEWINDOWEXTEX(void)
1144 /* EMRSCALEWINDOWEXTEX (pack 4) */
1145 TEST_TYPE(EMRSCALEWINDOWEXTEX, 24, 4);
1146 TEST_FIELD(EMRSCALEWINDOWEXTEX, EMR, emr, 0, 8, 4);
1147 TEST_FIELD(EMRSCALEWINDOWEXTEX, LONG, xNum, 8, 4, 4);
1148 TEST_FIELD(EMRSCALEWINDOWEXTEX, LONG, xDenom, 12, 4, 4);
1149 TEST_FIELD(EMRSCALEWINDOWEXTEX, LONG, yNum, 16, 4, 4);
1150 TEST_FIELD(EMRSCALEWINDOWEXTEX, LONG, yDenom, 20, 4, 4);
1153 static void test_pack_EMRSELECTCLIPPATH(void)
1155 /* EMRSELECTCLIPPATH (pack 4) */
1156 TEST_TYPE(EMRSELECTCLIPPATH, 12, 4);
1157 TEST_FIELD(EMRSELECTCLIPPATH, EMR, emr, 0, 8, 4);
1158 TEST_FIELD(EMRSELECTCLIPPATH, DWORD, iMode, 8, 4, 4);
1161 static void test_pack_EMRSELECTCOLORSPACE(void)
1163 /* EMRSELECTCOLORSPACE (pack 4) */
1164 TEST_TYPE(EMRSELECTCOLORSPACE, 12, 4);
1165 TEST_FIELD(EMRSELECTCOLORSPACE, EMR, emr, 0, 8, 4);
1166 TEST_FIELD(EMRSELECTCOLORSPACE, DWORD, ihCS, 8, 4, 4);
1169 static void test_pack_EMRSELECTOBJECT(void)
1171 /* EMRSELECTOBJECT (pack 4) */
1172 TEST_TYPE(EMRSELECTOBJECT, 12, 4);
1173 TEST_FIELD(EMRSELECTOBJECT, EMR, emr, 0, 8, 4);
1174 TEST_FIELD(EMRSELECTOBJECT, DWORD, ihObject, 8, 4, 4);
1177 static void test_pack_EMRSELECTPALETTE(void)
1179 /* EMRSELECTPALETTE (pack 4) */
1180 TEST_TYPE(EMRSELECTPALETTE, 12, 4);
1181 TEST_FIELD(EMRSELECTPALETTE, EMR, emr, 0, 8, 4);
1182 TEST_FIELD(EMRSELECTPALETTE, DWORD, ihPal, 8, 4, 4);
1185 static void test_pack_EMRSETARCDIRECTION(void)
1187 /* EMRSETARCDIRECTION (pack 4) */
1188 TEST_TYPE(EMRSETARCDIRECTION, 12, 4);
1189 TEST_FIELD(EMRSETARCDIRECTION, EMR, emr, 0, 8, 4);
1190 TEST_FIELD(EMRSETARCDIRECTION, DWORD, iArcDirection, 8, 4, 4);
1193 static void test_pack_EMRSETBKCOLOR(void)
1195 /* EMRSETBKCOLOR (pack 4) */
1196 TEST_TYPE(EMRSETBKCOLOR, 12, 4);
1197 TEST_FIELD(EMRSETBKCOLOR, EMR, emr, 0, 8, 4);
1198 TEST_FIELD(EMRSETBKCOLOR, COLORREF, crColor, 8, 4, 4);
1201 static void test_pack_EMRSETBKMODE(void)
1203 /* EMRSETBKMODE (pack 4) */
1204 TEST_TYPE(EMRSETBKMODE, 12, 4);
1205 TEST_FIELD(EMRSETBKMODE, EMR, emr, 0, 8, 4);
1206 TEST_FIELD(EMRSETBKMODE, DWORD, iMode, 8, 4, 4);
1209 static void test_pack_EMRSETBRUSHORGEX(void)
1211 /* EMRSETBRUSHORGEX (pack 4) */
1212 TEST_TYPE(EMRSETBRUSHORGEX, 16, 4);
1213 TEST_FIELD(EMRSETBRUSHORGEX, EMR, emr, 0, 8, 4);
1214 TEST_FIELD(EMRSETBRUSHORGEX, POINTL, ptlOrigin, 8, 8, 4);
1217 static void test_pack_EMRSETCOLORADJUSTMENT(void)
1219 /* EMRSETCOLORADJUSTMENT (pack 4) */
1220 TEST_TYPE(EMRSETCOLORADJUSTMENT, 32, 4);
1221 TEST_FIELD(EMRSETCOLORADJUSTMENT, EMR, emr, 0, 8, 4);
1222 TEST_FIELD(EMRSETCOLORADJUSTMENT, COLORADJUSTMENT, ColorAdjustment, 8, 24, 2);
1225 static void test_pack_EMRSETCOLORSPACE(void)
1227 /* EMRSETCOLORSPACE (pack 4) */
1228 TEST_TYPE(EMRSETCOLORSPACE, 12, 4);
1229 TEST_FIELD(EMRSETCOLORSPACE, EMR, emr, 0, 8, 4);
1230 TEST_FIELD(EMRSETCOLORSPACE, DWORD, ihCS, 8, 4, 4);
1233 static void test_pack_EMRSETDIBITSTODEVICE(void)
1235 /* EMRSETDIBITSTODEVICE (pack 4) */
1236 TEST_TYPE(EMRSETDIBITSTODEVICE, 76, 4);
1237 TEST_FIELD(EMRSETDIBITSTODEVICE, EMR, emr, 0, 8, 4);
1238 TEST_FIELD(EMRSETDIBITSTODEVICE, RECTL, rclBounds, 8, 16, 4);
1239 TEST_FIELD(EMRSETDIBITSTODEVICE, LONG, xDest, 24, 4, 4);
1240 TEST_FIELD(EMRSETDIBITSTODEVICE, LONG, yDest, 28, 4, 4);
1241 TEST_FIELD(EMRSETDIBITSTODEVICE, LONG, xSrc, 32, 4, 4);
1242 TEST_FIELD(EMRSETDIBITSTODEVICE, LONG, ySrc, 36, 4, 4);
1243 TEST_FIELD(EMRSETDIBITSTODEVICE, LONG, cxSrc, 40, 4, 4);
1244 TEST_FIELD(EMRSETDIBITSTODEVICE, LONG, cySrc, 44, 4, 4);
1245 TEST_FIELD(EMRSETDIBITSTODEVICE, DWORD, offBmiSrc, 48, 4, 4);
1246 TEST_FIELD(EMRSETDIBITSTODEVICE, DWORD, cbBmiSrc, 52, 4, 4);
1247 TEST_FIELD(EMRSETDIBITSTODEVICE, DWORD, offBitsSrc, 56, 4, 4);
1248 TEST_FIELD(EMRSETDIBITSTODEVICE, DWORD, cbBitsSrc, 60, 4, 4);
1249 TEST_FIELD(EMRSETDIBITSTODEVICE, DWORD, iUsageSrc, 64, 4, 4);
1250 TEST_FIELD(EMRSETDIBITSTODEVICE, DWORD, iStartScan, 68, 4, 4);
1251 TEST_FIELD(EMRSETDIBITSTODEVICE, DWORD, cScans, 72, 4, 4);
1254 static void test_pack_EMRSETICMMODE(void)
1256 /* EMRSETICMMODE (pack 4) */
1257 TEST_TYPE(EMRSETICMMODE, 12, 4);
1258 TEST_FIELD(EMRSETICMMODE, EMR, emr, 0, 8, 4);
1259 TEST_FIELD(EMRSETICMMODE, DWORD, iMode, 8, 4, 4);
1262 static void test_pack_EMRSETLAYOUT(void)
1264 /* EMRSETLAYOUT (pack 4) */
1265 TEST_TYPE(EMRSETLAYOUT, 12, 4);
1266 TEST_FIELD(EMRSETLAYOUT, EMR, emr, 0, 8, 4);
1267 TEST_FIELD(EMRSETLAYOUT, DWORD, iMode, 8, 4, 4);
1270 static void test_pack_EMRSETMAPMODE(void)
1272 /* EMRSETMAPMODE (pack 4) */
1273 TEST_TYPE(EMRSETMAPMODE, 12, 4);
1274 TEST_FIELD(EMRSETMAPMODE, EMR, emr, 0, 8, 4);
1275 TEST_FIELD(EMRSETMAPMODE, DWORD, iMode, 8, 4, 4);
1278 static void test_pack_EMRSETMAPPERFLAGS(void)
1280 /* EMRSETMAPPERFLAGS (pack 4) */
1281 TEST_TYPE(EMRSETMAPPERFLAGS, 12, 4);
1282 TEST_FIELD(EMRSETMAPPERFLAGS, EMR, emr, 0, 8, 4);
1283 TEST_FIELD(EMRSETMAPPERFLAGS, DWORD, dwFlags, 8, 4, 4);
1286 static void test_pack_EMRSETMETARGN(void)
1288 /* EMRSETMETARGN (pack 4) */
1289 TEST_TYPE(EMRSETMETARGN, 8, 4);
1290 TEST_FIELD(EMRSETMETARGN, EMR, emr, 0, 8, 4);
1293 static void test_pack_EMRSETMITERLIMIT(void)
1295 /* EMRSETMITERLIMIT (pack 4) */
1296 TEST_TYPE(EMRSETMITERLIMIT, 12, 4);
1297 TEST_FIELD(EMRSETMITERLIMIT, EMR, emr, 0, 8, 4);
1298 TEST_FIELD(EMRSETMITERLIMIT, FLOAT, eMiterLimit, 8, 4, 4);
1301 static void test_pack_EMRSETPIXELV(void)
1303 /* EMRSETPIXELV (pack 4) */
1304 TEST_TYPE(EMRSETPIXELV, 20, 4);
1305 TEST_FIELD(EMRSETPIXELV, EMR, emr, 0, 8, 4);
1306 TEST_FIELD(EMRSETPIXELV, POINTL, ptlPixel, 8, 8, 4);
1307 TEST_FIELD(EMRSETPIXELV, COLORREF, crColor, 16, 4, 4);
1310 static void test_pack_EMRSETPOLYFILLMODE(void)
1312 /* EMRSETPOLYFILLMODE (pack 4) */
1313 TEST_TYPE(EMRSETPOLYFILLMODE, 12, 4);
1314 TEST_FIELD(EMRSETPOLYFILLMODE, EMR, emr, 0, 8, 4);
1315 TEST_FIELD(EMRSETPOLYFILLMODE, DWORD, iMode, 8, 4, 4);
1318 static void test_pack_EMRSETROP2(void)
1320 /* EMRSETROP2 (pack 4) */
1321 TEST_TYPE(EMRSETROP2, 12, 4);
1322 TEST_FIELD(EMRSETROP2, EMR, emr, 0, 8, 4);
1323 TEST_FIELD(EMRSETROP2, DWORD, iMode, 8, 4, 4);
1326 static void test_pack_EMRSETSTRETCHBLTMODE(void)
1328 /* EMRSETSTRETCHBLTMODE (pack 4) */
1329 TEST_TYPE(EMRSETSTRETCHBLTMODE, 12, 4);
1330 TEST_FIELD(EMRSETSTRETCHBLTMODE, EMR, emr, 0, 8, 4);
1331 TEST_FIELD(EMRSETSTRETCHBLTMODE, DWORD, iMode, 8, 4, 4);
1334 static void test_pack_EMRSETTEXTALIGN(void)
1336 /* EMRSETTEXTALIGN (pack 4) */
1337 TEST_TYPE(EMRSETTEXTALIGN, 12, 4);
1338 TEST_FIELD(EMRSETTEXTALIGN, EMR, emr, 0, 8, 4);
1339 TEST_FIELD(EMRSETTEXTALIGN, DWORD, iMode, 8, 4, 4);
1342 static void test_pack_EMRSETTEXTCOLOR(void)
1344 /* EMRSETTEXTCOLOR (pack 4) */
1345 TEST_TYPE(EMRSETTEXTCOLOR, 12, 4);
1346 TEST_FIELD(EMRSETTEXTCOLOR, EMR, emr, 0, 8, 4);
1347 TEST_FIELD(EMRSETTEXTCOLOR, COLORREF, crColor, 8, 4, 4);
1350 static void test_pack_EMRSETVIEWPORTEXTEX(void)
1352 /* EMRSETVIEWPORTEXTEX (pack 4) */
1353 TEST_TYPE(EMRSETVIEWPORTEXTEX, 16, 4);
1354 TEST_FIELD(EMRSETVIEWPORTEXTEX, EMR, emr, 0, 8, 4);
1355 TEST_FIELD(EMRSETVIEWPORTEXTEX, SIZEL, szlExtent, 8, 8, 4);
1358 static void test_pack_EMRSETVIEWPORTORGEX(void)
1360 /* EMRSETVIEWPORTORGEX (pack 4) */
1361 TEST_TYPE(EMRSETVIEWPORTORGEX, 16, 4);
1362 TEST_FIELD(EMRSETVIEWPORTORGEX, EMR, emr, 0, 8, 4);
1363 TEST_FIELD(EMRSETVIEWPORTORGEX, POINTL, ptlOrigin, 8, 8, 4);
1366 static void test_pack_EMRSETWINDOWEXTEX(void)
1368 /* EMRSETWINDOWEXTEX (pack 4) */
1369 TEST_TYPE(EMRSETWINDOWEXTEX, 16, 4);
1370 TEST_FIELD(EMRSETWINDOWEXTEX, EMR, emr, 0, 8, 4);
1371 TEST_FIELD(EMRSETWINDOWEXTEX, SIZEL, szlExtent, 8, 8, 4);
1374 static void test_pack_EMRSETWINDOWORGEX(void)
1376 /* EMRSETWINDOWORGEX (pack 4) */
1377 TEST_TYPE(EMRSETWINDOWORGEX, 16, 4);
1378 TEST_FIELD(EMRSETWINDOWORGEX, EMR, emr, 0, 8, 4);
1379 TEST_FIELD(EMRSETWINDOWORGEX, POINTL, ptlOrigin, 8, 8, 4);
1382 static void test_pack_EMRSETWORLDTRANSFORM(void)
1384 /* EMRSETWORLDTRANSFORM (pack 4) */
1385 TEST_TYPE(EMRSETWORLDTRANSFORM, 32, 4);
1386 TEST_FIELD(EMRSETWORLDTRANSFORM, EMR, emr, 0, 8, 4);
1387 TEST_FIELD(EMRSETWORLDTRANSFORM, XFORM, xform, 8, 24, 4);
1390 static void test_pack_EMRSTRETCHBLT(void)
1392 /* EMRSTRETCHBLT (pack 4) */
1393 TEST_TYPE(EMRSTRETCHBLT, 108, 4);
1394 TEST_FIELD(EMRSTRETCHBLT, EMR, emr, 0, 8, 4);
1395 TEST_FIELD(EMRSTRETCHBLT, RECTL, rclBounds, 8, 16, 4);
1396 TEST_FIELD(EMRSTRETCHBLT, LONG, xDest, 24, 4, 4);
1397 TEST_FIELD(EMRSTRETCHBLT, LONG, yDest, 28, 4, 4);
1398 TEST_FIELD(EMRSTRETCHBLT, LONG, cxDest, 32, 4, 4);
1399 TEST_FIELD(EMRSTRETCHBLT, LONG, cyDest, 36, 4, 4);
1400 TEST_FIELD(EMRSTRETCHBLT, DWORD, dwRop, 40, 4, 4);
1401 TEST_FIELD(EMRSTRETCHBLT, LONG, xSrc, 44, 4, 4);
1402 TEST_FIELD(EMRSTRETCHBLT, LONG, ySrc, 48, 4, 4);
1403 TEST_FIELD(EMRSTRETCHBLT, XFORM, xformSrc, 52, 24, 4);
1404 TEST_FIELD(EMRSTRETCHBLT, COLORREF, crBkColorSrc, 76, 4, 4);
1405 TEST_FIELD(EMRSTRETCHBLT, DWORD, iUsageSrc, 80, 4, 4);
1406 TEST_FIELD(EMRSTRETCHBLT, DWORD, offBmiSrc, 84, 4, 4);
1407 TEST_FIELD(EMRSTRETCHBLT, DWORD, cbBmiSrc, 88, 4, 4);
1408 TEST_FIELD(EMRSTRETCHBLT, DWORD, offBitsSrc, 92, 4, 4);
1409 TEST_FIELD(EMRSTRETCHBLT, DWORD, cbBitsSrc, 96, 4, 4);
1410 TEST_FIELD(EMRSTRETCHBLT, LONG, cxSrc, 100, 4, 4);
1411 TEST_FIELD(EMRSTRETCHBLT, LONG, cySrc, 104, 4, 4);
1414 static void test_pack_EMRSTRETCHDIBITS(void)
1416 /* EMRSTRETCHDIBITS (pack 4) */
1417 TEST_TYPE(EMRSTRETCHDIBITS, 80, 4);
1418 TEST_FIELD(EMRSTRETCHDIBITS, EMR, emr, 0, 8, 4);
1419 TEST_FIELD(EMRSTRETCHDIBITS, RECTL, rclBounds, 8, 16, 4);
1420 TEST_FIELD(EMRSTRETCHDIBITS, LONG, xDest, 24, 4, 4);
1421 TEST_FIELD(EMRSTRETCHDIBITS, LONG, yDest, 28, 4, 4);
1422 TEST_FIELD(EMRSTRETCHDIBITS, LONG, xSrc, 32, 4, 4);
1423 TEST_FIELD(EMRSTRETCHDIBITS, LONG, ySrc, 36, 4, 4);
1424 TEST_FIELD(EMRSTRETCHDIBITS, LONG, cxSrc, 40, 4, 4);
1425 TEST_FIELD(EMRSTRETCHDIBITS, LONG, cySrc, 44, 4, 4);
1426 TEST_FIELD(EMRSTRETCHDIBITS, DWORD, offBmiSrc, 48, 4, 4);
1427 TEST_FIELD(EMRSTRETCHDIBITS, DWORD, cbBmiSrc, 52, 4, 4);
1428 TEST_FIELD(EMRSTRETCHDIBITS, DWORD, offBitsSrc, 56, 4, 4);
1429 TEST_FIELD(EMRSTRETCHDIBITS, DWORD, cbBitsSrc, 60, 4, 4);
1430 TEST_FIELD(EMRSTRETCHDIBITS, DWORD, iUsageSrc, 64, 4, 4);
1431 TEST_FIELD(EMRSTRETCHDIBITS, DWORD, dwRop, 68, 4, 4);
1432 TEST_FIELD(EMRSTRETCHDIBITS, LONG, cxDest, 72, 4, 4);
1433 TEST_FIELD(EMRSTRETCHDIBITS, LONG, cyDest, 76, 4, 4);
1436 static void test_pack_EMRSTROKEANDFILLPATH(void)
1438 /* EMRSTROKEANDFILLPATH (pack 4) */
1439 TEST_TYPE(EMRSTROKEANDFILLPATH, 24, 4);
1440 TEST_FIELD(EMRSTROKEANDFILLPATH, EMR, emr, 0, 8, 4);
1441 TEST_FIELD(EMRSTROKEANDFILLPATH, RECTL, rclBounds, 8, 16, 4);
1444 static void test_pack_EMRSTROKEPATH(void)
1446 /* EMRSTROKEPATH (pack 4) */
1447 TEST_TYPE(EMRSTROKEPATH, 24, 4);
1448 TEST_FIELD(EMRSTROKEPATH, EMR, emr, 0, 8, 4);
1449 TEST_FIELD(EMRSTROKEPATH, RECTL, rclBounds, 8, 16, 4);
1452 static void test_pack_EMRTEXT(void)
1454 /* EMRTEXT (pack 4) */
1455 TEST_TYPE(EMRTEXT, 40, 4);
1456 TEST_FIELD(EMRTEXT, POINTL, ptlReference, 0, 8, 4);
1457 TEST_FIELD(EMRTEXT, DWORD, nChars, 8, 4, 4);
1458 TEST_FIELD(EMRTEXT, DWORD, offString, 12, 4, 4);
1459 TEST_FIELD(EMRTEXT, DWORD, fOptions, 16, 4, 4);
1460 TEST_FIELD(EMRTEXT, RECTL, rcl, 20, 16, 4);
1461 TEST_FIELD(EMRTEXT, DWORD, offDx, 36, 4, 4);
1464 static void test_pack_EMRWIDENPATH(void)
1466 /* EMRWIDENPATH (pack 4) */
1467 TEST_TYPE(EMRWIDENPATH, 8, 4);
1468 TEST_FIELD(EMRWIDENPATH, EMR, emr, 0, 8, 4);
1471 static void test_pack_ENHMETAHEADER(void)
1473 /* ENHMETAHEADER (pack 4) */
1474 TEST_TYPE(ENHMETAHEADER, 108, 4);
1475 TEST_FIELD(ENHMETAHEADER, DWORD, iType, 0, 4, 4);
1476 TEST_FIELD(ENHMETAHEADER, DWORD, nSize, 4, 4, 4);
1477 TEST_FIELD(ENHMETAHEADER, RECTL, rclBounds, 8, 16, 4);
1478 TEST_FIELD(ENHMETAHEADER, RECTL, rclFrame, 24, 16, 4);
1479 TEST_FIELD(ENHMETAHEADER, DWORD, dSignature, 40, 4, 4);
1480 TEST_FIELD(ENHMETAHEADER, DWORD, nVersion, 44, 4, 4);
1481 TEST_FIELD(ENHMETAHEADER, DWORD, nBytes, 48, 4, 4);
1482 TEST_FIELD(ENHMETAHEADER, DWORD, nRecords, 52, 4, 4);
1483 TEST_FIELD(ENHMETAHEADER, WORD, nHandles, 56, 2, 2);
1484 TEST_FIELD(ENHMETAHEADER, WORD, sReserved, 58, 2, 2);
1485 TEST_FIELD(ENHMETAHEADER, DWORD, nDescription, 60, 4, 4);
1486 TEST_FIELD(ENHMETAHEADER, DWORD, offDescription, 64, 4, 4);
1487 TEST_FIELD(ENHMETAHEADER, DWORD, nPalEntries, 68, 4, 4);
1488 TEST_FIELD(ENHMETAHEADER, SIZEL, szlDevice, 72, 8, 4);
1489 TEST_FIELD(ENHMETAHEADER, SIZEL, szlMillimeters, 80, 8, 4);
1490 TEST_FIELD(ENHMETAHEADER, DWORD, cbPixelFormat, 88, 4, 4);
1491 TEST_FIELD(ENHMETAHEADER, DWORD, offPixelFormat, 92, 4, 4);
1492 TEST_FIELD(ENHMETAHEADER, DWORD, bOpenGL, 96, 4, 4);
1493 TEST_FIELD(ENHMETAHEADER, SIZEL, szlMicrometers, 100, 8, 4);
1496 static void test_pack_ENHMETARECORD(void)
1498 /* ENHMETARECORD (pack 4) */
1499 TEST_TYPE(ENHMETARECORD, 12, 4);
1500 TEST_FIELD(ENHMETARECORD, DWORD, iType, 0, 4, 4);
1501 TEST_FIELD(ENHMETARECORD, DWORD, nSize, 4, 4, 4);
1502 TEST_FIELD(ENHMETARECORD, DWORD[1], dParm, 8, 4, 4);
1505 static void test_pack_ENHMFENUMPROC(void)
1508 TEST_TYPE(ENHMFENUMPROC, 4, 4);
1511 static void test_pack_ENUMLOGFONTA(void)
1513 /* ENUMLOGFONTA (pack 4) */
1514 TEST_TYPE(ENUMLOGFONTA, 156, 4);
1515 TEST_FIELD(ENUMLOGFONTA, LOGFONTA, elfLogFont, 0, 60, 4);
1516 TEST_FIELD(ENUMLOGFONTA, BYTE[LF_FULLFACESIZE], elfFullName, 60, 64, 1);
1517 TEST_FIELD(ENUMLOGFONTA, BYTE[LF_FACESIZE], elfStyle, 124, 32, 1);
1520 static void test_pack_ENUMLOGFONTEXA(void)
1522 /* ENUMLOGFONTEXA (pack 4) */
1523 TEST_TYPE(ENUMLOGFONTEXA, 188, 4);
1524 TEST_FIELD(ENUMLOGFONTEXA, LOGFONTA, elfLogFont, 0, 60, 4);
1525 TEST_FIELD(ENUMLOGFONTEXA, BYTE[LF_FULLFACESIZE], elfFullName, 60, 64, 1);
1526 TEST_FIELD(ENUMLOGFONTEXA, BYTE[LF_FACESIZE], elfStyle, 124, 32, 1);
1527 TEST_FIELD(ENUMLOGFONTEXA, BYTE[LF_FACESIZE], elfScript, 156, 32, 1);
1530 static void test_pack_ENUMLOGFONTEXW(void)
1532 /* ENUMLOGFONTEXW (pack 4) */
1533 TEST_TYPE(ENUMLOGFONTEXW, 348, 4);
1534 TEST_FIELD(ENUMLOGFONTEXW, LOGFONTW, elfLogFont, 0, 92, 4);
1535 TEST_FIELD(ENUMLOGFONTEXW, WCHAR[LF_FULLFACESIZE], elfFullName, 92, 128, 2);
1536 TEST_FIELD(ENUMLOGFONTEXW, WCHAR[LF_FACESIZE], elfStyle, 220, 64, 2);
1537 TEST_FIELD(ENUMLOGFONTEXW, WCHAR[LF_FACESIZE], elfScript, 284, 64, 2);
1540 static void test_pack_ENUMLOGFONTW(void)
1542 /* ENUMLOGFONTW (pack 4) */
1543 TEST_TYPE(ENUMLOGFONTW, 284, 4);
1544 TEST_FIELD(ENUMLOGFONTW, LOGFONTW, elfLogFont, 0, 92, 4);
1545 TEST_FIELD(ENUMLOGFONTW, WCHAR[LF_FULLFACESIZE], elfFullName, 92, 128, 2);
1546 TEST_FIELD(ENUMLOGFONTW, WCHAR[LF_FACESIZE], elfStyle, 220, 64, 2);
1549 static void test_pack_EXTLOGFONTA(void)
1551 /* EXTLOGFONTA (pack 4) */
1552 TEST_TYPE(EXTLOGFONTA, 192, 4);
1553 TEST_FIELD(EXTLOGFONTA, LOGFONTA, elfLogFont, 0, 60, 4);
1554 TEST_FIELD(EXTLOGFONTA, BYTE[LF_FULLFACESIZE], elfFullName, 60, 64, 1);
1555 TEST_FIELD(EXTLOGFONTA, BYTE[LF_FACESIZE], elfStyle, 124, 32, 1);
1556 TEST_FIELD(EXTLOGFONTA, DWORD, elfVersion, 156, 4, 4);
1557 TEST_FIELD(EXTLOGFONTA, DWORD, elfStyleSize, 160, 4, 4);
1558 TEST_FIELD(EXTLOGFONTA, DWORD, elfMatch, 164, 4, 4);
1559 TEST_FIELD(EXTLOGFONTA, DWORD, elfReserved, 168, 4, 4);
1560 TEST_FIELD(EXTLOGFONTA, BYTE[ELF_VENDOR_SIZE], elfVendorId, 172, 4, 1);
1561 TEST_FIELD(EXTLOGFONTA, DWORD, elfCulture, 176, 4, 4);
1562 TEST_FIELD(EXTLOGFONTA, PANOSE, elfPanose, 180, 10, 1);
1565 static void test_pack_EXTLOGFONTW(void)
1567 /* EXTLOGFONTW (pack 4) */
1568 TEST_TYPE(EXTLOGFONTW, 320, 4);
1569 TEST_FIELD(EXTLOGFONTW, LOGFONTW, elfLogFont, 0, 92, 4);
1570 TEST_FIELD(EXTLOGFONTW, WCHAR[LF_FULLFACESIZE], elfFullName, 92, 128, 2);
1571 TEST_FIELD(EXTLOGFONTW, WCHAR[LF_FACESIZE], elfStyle, 220, 64, 2);
1572 TEST_FIELD(EXTLOGFONTW, DWORD, elfVersion, 284, 4, 4);
1573 TEST_FIELD(EXTLOGFONTW, DWORD, elfStyleSize, 288, 4, 4);
1574 TEST_FIELD(EXTLOGFONTW, DWORD, elfMatch, 292, 4, 4);
1575 TEST_FIELD(EXTLOGFONTW, DWORD, elfReserved, 296, 4, 4);
1576 TEST_FIELD(EXTLOGFONTW, BYTE[ELF_VENDOR_SIZE], elfVendorId, 300, 4, 1);
1577 TEST_FIELD(EXTLOGFONTW, DWORD, elfCulture, 304, 4, 4);
1578 TEST_FIELD(EXTLOGFONTW, PANOSE, elfPanose, 308, 10, 1);
1581 static void test_pack_EXTLOGPEN(void)
1583 /* EXTLOGPEN (pack 4) */
1584 TEST_TYPE(EXTLOGPEN, 28, 4);
1585 TEST_FIELD(EXTLOGPEN, DWORD, elpPenStyle, 0, 4, 4);
1586 TEST_FIELD(EXTLOGPEN, DWORD, elpWidth, 4, 4, 4);
1587 TEST_FIELD(EXTLOGPEN, UINT, elpBrushStyle, 8, 4, 4);
1588 TEST_FIELD(EXTLOGPEN, COLORREF, elpColor, 12, 4, 4);
1589 TEST_FIELD(EXTLOGPEN, ULONG_PTR, elpHatch, 16, 4, 4);
1590 TEST_FIELD(EXTLOGPEN, DWORD, elpNumEntries, 20, 4, 4);
1591 TEST_FIELD(EXTLOGPEN, DWORD[1], elpStyleEntry, 24, 4, 4);
1594 static void test_pack_FIXED(void)
1596 /* FIXED (pack 4) */
1597 TEST_TYPE(FIXED, 4, 2);
1598 TEST_FIELD(FIXED, WORD, fract, 0, 2, 2);
1599 TEST_FIELD(FIXED, SHORT, value, 2, 2, 2);
1602 static void test_pack_FONTENUMPROCA(void)
1605 TEST_TYPE(FONTENUMPROCA, 4, 4);
1608 static void test_pack_FONTENUMPROCW(void)
1611 TEST_TYPE(FONTENUMPROCW, 4, 4);
1614 static void test_pack_FONTSIGNATURE(void)
1616 /* FONTSIGNATURE (pack 4) */
1617 TEST_TYPE(FONTSIGNATURE, 24, 4);
1618 TEST_FIELD(FONTSIGNATURE, DWORD[4], fsUsb, 0, 16, 4);
1619 TEST_FIELD(FONTSIGNATURE, DWORD[2], fsCsb, 16, 8, 4);
1622 static void test_pack_FXPT16DOT16(void)
1625 TEST_TYPE(FXPT16DOT16, 4, 4);
1628 static void test_pack_FXPT2DOT30(void)
1631 TEST_TYPE(FXPT2DOT30, 4, 4);
1634 static void test_pack_GCP_RESULTSA(void)
1636 /* GCP_RESULTSA (pack 4) */
1637 TEST_TYPE(GCP_RESULTSA, 36, 4);
1638 TEST_FIELD(GCP_RESULTSA, DWORD, lStructSize, 0, 4, 4);
1639 TEST_FIELD(GCP_RESULTSA, LPSTR, lpOutString, 4, 4, 4);
1640 TEST_FIELD(GCP_RESULTSA, UINT *, lpOrder, 8, 4, 4);
1641 TEST_FIELD(GCP_RESULTSA, INT *, lpDx, 12, 4, 4);
1642 TEST_FIELD(GCP_RESULTSA, INT *, lpCaretPos, 16, 4, 4);
1643 TEST_FIELD(GCP_RESULTSA, LPSTR, lpClass, 20, 4, 4);
1644 TEST_FIELD(GCP_RESULTSA, LPWSTR, lpGlyphs, 24, 4, 4);
1645 TEST_FIELD(GCP_RESULTSA, UINT, nGlyphs, 28, 4, 4);
1646 TEST_FIELD(GCP_RESULTSA, UINT, nMaxFit, 32, 4, 4);
1649 static void test_pack_GCP_RESULTSW(void)
1651 /* GCP_RESULTSW (pack 4) */
1652 TEST_TYPE(GCP_RESULTSW, 36, 4);
1653 TEST_FIELD(GCP_RESULTSW, DWORD, lStructSize, 0, 4, 4);
1654 TEST_FIELD(GCP_RESULTSW, LPWSTR, lpOutString, 4, 4, 4);
1655 TEST_FIELD(GCP_RESULTSW, UINT *, lpOrder, 8, 4, 4);
1656 TEST_FIELD(GCP_RESULTSW, INT *, lpDx, 12, 4, 4);
1657 TEST_FIELD(GCP_RESULTSW, INT *, lpCaretPos, 16, 4, 4);
1658 TEST_FIELD(GCP_RESULTSW, LPSTR, lpClass, 20, 4, 4);
1659 TEST_FIELD(GCP_RESULTSW, LPWSTR, lpGlyphs, 24, 4, 4);
1660 TEST_FIELD(GCP_RESULTSW, UINT, nGlyphs, 28, 4, 4);
1661 TEST_FIELD(GCP_RESULTSW, UINT, nMaxFit, 32, 4, 4);
1664 static void test_pack_GLYPHMETRICS(void)
1666 /* GLYPHMETRICS (pack 4) */
1667 TEST_TYPE(GLYPHMETRICS, 20, 4);
1668 TEST_FIELD(GLYPHMETRICS, UINT, gmBlackBoxX, 0, 4, 4);
1669 TEST_FIELD(GLYPHMETRICS, UINT, gmBlackBoxY, 4, 4, 4);
1670 TEST_FIELD(GLYPHMETRICS, POINT, gmptGlyphOrigin, 8, 8, 4);
1671 TEST_FIELD(GLYPHMETRICS, SHORT, gmCellIncX, 16, 2, 2);
1672 TEST_FIELD(GLYPHMETRICS, SHORT, gmCellIncY, 18, 2, 2);
1675 static void test_pack_GLYPHMETRICSFLOAT(void)
1677 /* GLYPHMETRICSFLOAT (pack 4) */
1678 TEST_TYPE(GLYPHMETRICSFLOAT, 24, 4);
1679 TEST_FIELD(GLYPHMETRICSFLOAT, FLOAT, gmfBlackBoxX, 0, 4, 4);
1680 TEST_FIELD(GLYPHMETRICSFLOAT, FLOAT, gmfBlackBoxY, 4, 4, 4);
1681 TEST_FIELD(GLYPHMETRICSFLOAT, POINTFLOAT, gmfptGlyphOrigin, 8, 8, 4);
1682 TEST_FIELD(GLYPHMETRICSFLOAT, FLOAT, gmfCellIncX, 16, 4, 4);
1683 TEST_FIELD(GLYPHMETRICSFLOAT, FLOAT, gmfCellIncY, 20, 4, 4);
1686 static void test_pack_GOBJENUMPROC(void)
1689 TEST_TYPE(GOBJENUMPROC, 4, 4);
1692 static void test_pack_GRADIENT_RECT(void)
1694 /* GRADIENT_RECT (pack 4) */
1695 TEST_TYPE(GRADIENT_RECT, 8, 4);
1696 TEST_FIELD(GRADIENT_RECT, ULONG, UpperLeft, 0, 4, 4);
1697 TEST_FIELD(GRADIENT_RECT, ULONG, LowerRight, 4, 4, 4);
1700 static void test_pack_GRADIENT_TRIANGLE(void)
1702 /* GRADIENT_TRIANGLE (pack 4) */
1703 TEST_TYPE(GRADIENT_TRIANGLE, 12, 4);
1704 TEST_FIELD(GRADIENT_TRIANGLE, ULONG, Vertex1, 0, 4, 4);
1705 TEST_FIELD(GRADIENT_TRIANGLE, ULONG, Vertex2, 4, 4, 4);
1706 TEST_FIELD(GRADIENT_TRIANGLE, ULONG, Vertex3, 8, 4, 4);
1709 static void test_pack_HANDLETABLE(void)
1711 /* HANDLETABLE (pack 4) */
1712 TEST_TYPE(HANDLETABLE, 4, 4);
1713 TEST_FIELD(HANDLETABLE, HGDIOBJ[1], objectHandle, 0, 4, 4);
1716 static void test_pack_ICMENUMPROCA(void)
1719 TEST_TYPE(ICMENUMPROCA, 4, 4);
1722 static void test_pack_ICMENUMPROCW(void)
1725 TEST_TYPE(ICMENUMPROCW, 4, 4);
1728 static void test_pack_KERNINGPAIR(void)
1730 /* KERNINGPAIR (pack 4) */
1731 TEST_TYPE(KERNINGPAIR, 8, 4);
1732 TEST_FIELD(KERNINGPAIR, WORD, wFirst, 0, 2, 2);
1733 TEST_FIELD(KERNINGPAIR, WORD, wSecond, 2, 2, 2);
1734 TEST_FIELD(KERNINGPAIR, INT, iKernAmount, 4, 4, 4);
1737 static void test_pack_LAYERPLANEDESCRIPTOR(void)
1739 /* LAYERPLANEDESCRIPTOR (pack 4) */
1740 TEST_TYPE(LAYERPLANEDESCRIPTOR, 32, 4);
1741 TEST_FIELD(LAYERPLANEDESCRIPTOR, WORD, nSize, 0, 2, 2);
1742 TEST_FIELD(LAYERPLANEDESCRIPTOR, WORD, nVersion, 2, 2, 2);
1743 TEST_FIELD(LAYERPLANEDESCRIPTOR, DWORD, dwFlags, 4, 4, 4);
1744 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, iPixelType, 8, 1, 1);
1745 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cColorBits, 9, 1, 1);
1746 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cRedBits, 10, 1, 1);
1747 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cRedShift, 11, 1, 1);
1748 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cGreenBits, 12, 1, 1);
1749 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cGreenShift, 13, 1, 1);
1750 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cBlueBits, 14, 1, 1);
1751 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cBlueShift, 15, 1, 1);
1752 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cAlphaBits, 16, 1, 1);
1753 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cAlphaShift, 17, 1, 1);
1754 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cAccumBits, 18, 1, 1);
1755 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cAccumRedBits, 19, 1, 1);
1756 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cAccumGreenBits, 20, 1, 1);
1757 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cAccumBlueBits, 21, 1, 1);
1758 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cAccumAlphaBits, 22, 1, 1);
1759 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cDepthBits, 23, 1, 1);
1760 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cStencilBits, 24, 1, 1);
1761 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, cAuxBuffers, 25, 1, 1);
1762 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, iLayerPlane, 26, 1, 1);
1763 TEST_FIELD(LAYERPLANEDESCRIPTOR, BYTE, bReserved, 27, 1, 1);
1764 TEST_FIELD(LAYERPLANEDESCRIPTOR, COLORREF, crTransparent, 28, 4, 4);
1767 static void test_pack_LCSCSTYPE(void)
1770 TEST_TYPE(LCSCSTYPE, 4, 4);
1773 static void test_pack_LCSGAMUTMATCH(void)
1776 TEST_TYPE(LCSGAMUTMATCH, 4, 4);
1779 static void test_pack_LINEDDAPROC(void)
1782 TEST_TYPE(LINEDDAPROC, 4, 4);
1785 static void test_pack_LOCALESIGNATURE(void)
1787 /* LOCALESIGNATURE (pack 4) */
1788 TEST_TYPE(LOCALESIGNATURE, 32, 4);
1789 TEST_FIELD(LOCALESIGNATURE, DWORD[4], lsUsb, 0, 16, 4);
1790 TEST_FIELD(LOCALESIGNATURE, DWORD[2], lsCsbDefault, 16, 8, 4);
1791 TEST_FIELD(LOCALESIGNATURE, DWORD[2], lsCsbSupported, 24, 8, 4);
1794 static void test_pack_LOGBRUSH(void)
1796 /* LOGBRUSH (pack 4) */
1797 TEST_TYPE(LOGBRUSH, 12, 4);
1798 TEST_FIELD(LOGBRUSH, UINT, lbStyle, 0, 4, 4);
1799 TEST_FIELD(LOGBRUSH, COLORREF, lbColor, 4, 4, 4);
1800 TEST_FIELD(LOGBRUSH, ULONG_PTR, lbHatch, 8, 4, 4);
1803 static void test_pack_LOGCOLORSPACEA(void)
1805 /* LOGCOLORSPACEA (pack 4) */
1806 TEST_TYPE(LOGCOLORSPACEA, 328, 4);
1807 TEST_FIELD(LOGCOLORSPACEA, DWORD, lcsSignature, 0, 4, 4);
1808 TEST_FIELD(LOGCOLORSPACEA, DWORD, lcsVersion, 4, 4, 4);
1809 TEST_FIELD(LOGCOLORSPACEA, DWORD, lcsSize, 8, 4, 4);
1810 TEST_FIELD(LOGCOLORSPACEA, LCSCSTYPE, lcsCSType, 12, 4, 4);
1811 TEST_FIELD(LOGCOLORSPACEA, LCSGAMUTMATCH, lcsIntent, 16, 4, 4);
1812 TEST_FIELD(LOGCOLORSPACEA, CIEXYZTRIPLE, lcsEndpoints, 20, 36, 4);
1813 TEST_FIELD(LOGCOLORSPACEA, DWORD, lcsGammaRed, 56, 4, 4);
1814 TEST_FIELD(LOGCOLORSPACEA, DWORD, lcsGammaGreen, 60, 4, 4);
1815 TEST_FIELD(LOGCOLORSPACEA, DWORD, lcsGammaBlue, 64, 4, 4);
1816 TEST_FIELD(LOGCOLORSPACEA, CHAR[MAX_PATH], lcsFilename, 68, 260, 1);
1819 static void test_pack_LOGCOLORSPACEW(void)
1821 /* LOGCOLORSPACEW (pack 4) */
1822 TEST_TYPE(LOGCOLORSPACEW, 588, 4);
1823 TEST_FIELD(LOGCOLORSPACEW, DWORD, lcsSignature, 0, 4, 4);
1824 TEST_FIELD(LOGCOLORSPACEW, DWORD, lcsVersion, 4, 4, 4);
1825 TEST_FIELD(LOGCOLORSPACEW, DWORD, lcsSize, 8, 4, 4);
1826 TEST_FIELD(LOGCOLORSPACEW, LCSCSTYPE, lcsCSType, 12, 4, 4);
1827 TEST_FIELD(LOGCOLORSPACEW, LCSGAMUTMATCH, lcsIntent, 16, 4, 4);
1828 TEST_FIELD(LOGCOLORSPACEW, CIEXYZTRIPLE, lcsEndpoints, 20, 36, 4);
1829 TEST_FIELD(LOGCOLORSPACEW, DWORD, lcsGammaRed, 56, 4, 4);
1830 TEST_FIELD(LOGCOLORSPACEW, DWORD, lcsGammaGreen, 60, 4, 4);
1831 TEST_FIELD(LOGCOLORSPACEW, DWORD, lcsGammaBlue, 64, 4, 4);
1832 TEST_FIELD(LOGCOLORSPACEW, WCHAR[MAX_PATH], lcsFilename, 68, 520, 2);
1835 static void test_pack_LOGFONTA(void)
1837 /* LOGFONTA (pack 4) */
1838 TEST_TYPE(LOGFONTA, 60, 4);
1839 TEST_FIELD(LOGFONTA, LONG, lfHeight, 0, 4, 4);
1840 TEST_FIELD(LOGFONTA, LONG, lfWidth, 4, 4, 4);
1841 TEST_FIELD(LOGFONTA, LONG, lfEscapement, 8, 4, 4);
1842 TEST_FIELD(LOGFONTA, LONG, lfOrientation, 12, 4, 4);
1843 TEST_FIELD(LOGFONTA, LONG, lfWeight, 16, 4, 4);
1844 TEST_FIELD(LOGFONTA, BYTE, lfItalic, 20, 1, 1);
1845 TEST_FIELD(LOGFONTA, BYTE, lfUnderline, 21, 1, 1);
1846 TEST_FIELD(LOGFONTA, BYTE, lfStrikeOut, 22, 1, 1);
1847 TEST_FIELD(LOGFONTA, BYTE, lfCharSet, 23, 1, 1);
1848 TEST_FIELD(LOGFONTA, BYTE, lfOutPrecision, 24, 1, 1);
1849 TEST_FIELD(LOGFONTA, BYTE, lfClipPrecision, 25, 1, 1);
1850 TEST_FIELD(LOGFONTA, BYTE, lfQuality, 26, 1, 1);
1851 TEST_FIELD(LOGFONTA, BYTE, lfPitchAndFamily, 27, 1, 1);
1852 TEST_FIELD(LOGFONTA, CHAR[LF_FACESIZE], lfFaceName, 28, 32, 1);
1855 static void test_pack_LOGFONTW(void)
1857 /* LOGFONTW (pack 4) */
1858 TEST_TYPE(LOGFONTW, 92, 4);
1859 TEST_FIELD(LOGFONTW, LONG, lfHeight, 0, 4, 4);
1860 TEST_FIELD(LOGFONTW, LONG, lfWidth, 4, 4, 4);
1861 TEST_FIELD(LOGFONTW, LONG, lfEscapement, 8, 4, 4);
1862 TEST_FIELD(LOGFONTW, LONG, lfOrientation, 12, 4, 4);
1863 TEST_FIELD(LOGFONTW, LONG, lfWeight, 16, 4, 4);
1864 TEST_FIELD(LOGFONTW, BYTE, lfItalic, 20, 1, 1);
1865 TEST_FIELD(LOGFONTW, BYTE, lfUnderline, 21, 1, 1);
1866 TEST_FIELD(LOGFONTW, BYTE, lfStrikeOut, 22, 1, 1);
1867 TEST_FIELD(LOGFONTW, BYTE, lfCharSet, 23, 1, 1);
1868 TEST_FIELD(LOGFONTW, BYTE, lfOutPrecision, 24, 1, 1);
1869 TEST_FIELD(LOGFONTW, BYTE, lfClipPrecision, 25, 1, 1);
1870 TEST_FIELD(LOGFONTW, BYTE, lfQuality, 26, 1, 1);
1871 TEST_FIELD(LOGFONTW, BYTE, lfPitchAndFamily, 27, 1, 1);
1872 TEST_FIELD(LOGFONTW, WCHAR[LF_FACESIZE], lfFaceName, 28, 64, 2);
1875 static void test_pack_LOGPEN(void)
1877 /* LOGPEN (pack 4) */
1878 TEST_TYPE(LOGPEN, 16, 4);
1879 TEST_FIELD(LOGPEN, UINT, lopnStyle, 0, 4, 4);
1880 TEST_FIELD(LOGPEN, POINT, lopnWidth, 4, 8, 4);
1881 TEST_FIELD(LOGPEN, COLORREF, lopnColor, 12, 4, 4);
1884 static void test_pack_LPABC(void)
1887 TEST_TYPE(LPABC, 4, 4);
1888 TEST_TYPE_POINTER(LPABC, 12, 4);
1891 static void test_pack_LPABCFLOAT(void)
1894 TEST_TYPE(LPABCFLOAT, 4, 4);
1895 TEST_TYPE_POINTER(LPABCFLOAT, 12, 4);
1898 static void test_pack_LPBITMAP(void)
1901 TEST_TYPE(LPBITMAP, 4, 4);
1902 TEST_TYPE_POINTER(LPBITMAP, 24, 4);
1905 static void test_pack_LPBITMAPCOREHEADER(void)
1907 /* LPBITMAPCOREHEADER */
1908 TEST_TYPE(LPBITMAPCOREHEADER, 4, 4);
1909 TEST_TYPE_POINTER(LPBITMAPCOREHEADER, 12, 4);
1912 static void test_pack_LPBITMAPCOREINFO(void)
1914 /* LPBITMAPCOREINFO */
1915 TEST_TYPE(LPBITMAPCOREINFO, 4, 4);
1916 TEST_TYPE_POINTER(LPBITMAPCOREINFO, 16, 4);
1919 static void test_pack_LPBITMAPFILEHEADER(void)
1921 /* LPBITMAPFILEHEADER */
1922 TEST_TYPE(LPBITMAPFILEHEADER, 4, 4);
1923 TEST_TYPE_POINTER(LPBITMAPFILEHEADER, 14, 2);
1926 static void test_pack_LPBITMAPINFO(void)
1929 TEST_TYPE(LPBITMAPINFO, 4, 4);
1930 TEST_TYPE_POINTER(LPBITMAPINFO, 44, 4);
1933 static void test_pack_LPBITMAPINFOHEADER(void)
1935 /* LPBITMAPINFOHEADER */
1936 TEST_TYPE(LPBITMAPINFOHEADER, 4, 4);
1937 TEST_TYPE_POINTER(LPBITMAPINFOHEADER, 40, 4);
1940 static void test_pack_LPBITMAPV5HEADER(void)
1942 /* LPBITMAPV5HEADER */
1943 TEST_TYPE(LPBITMAPV5HEADER, 4, 4);
1944 TEST_TYPE_POINTER(LPBITMAPV5HEADER, 124, 4);
1947 static void test_pack_LPCHARSETINFO(void)
1950 TEST_TYPE(LPCHARSETINFO, 4, 4);
1951 TEST_TYPE_POINTER(LPCHARSETINFO, 32, 4);
1954 static void test_pack_LPCIEXYZ(void)
1957 TEST_TYPE(LPCIEXYZ, 4, 4);
1958 TEST_TYPE_POINTER(LPCIEXYZ, 12, 4);
1961 static void test_pack_LPCIEXYZTRIPLE(void)
1963 /* LPCIEXYZTRIPLE */
1964 TEST_TYPE(LPCIEXYZTRIPLE, 4, 4);
1965 TEST_TYPE_POINTER(LPCIEXYZTRIPLE, 36, 4);
1968 static void test_pack_LPCOLORADJUSTMENT(void)
1970 /* LPCOLORADJUSTMENT */
1971 TEST_TYPE(LPCOLORADJUSTMENT, 4, 4);
1972 TEST_TYPE_POINTER(LPCOLORADJUSTMENT, 24, 2);
1975 static void test_pack_LPDEVMODEA(void)
1978 TEST_TYPE(LPDEVMODEA, 4, 4);
1981 static void test_pack_LPDEVMODEW(void)
1984 TEST_TYPE(LPDEVMODEW, 4, 4);
1987 static void test_pack_LPDIBSECTION(void)
1990 TEST_TYPE(LPDIBSECTION, 4, 4);
1991 TEST_TYPE_POINTER(LPDIBSECTION, 84, 4);
1994 static void test_pack_LPDISPLAY_DEVICEA(void)
1996 /* LPDISPLAY_DEVICEA */
1997 TEST_TYPE(LPDISPLAY_DEVICEA, 4, 4);
1998 TEST_TYPE_POINTER(LPDISPLAY_DEVICEA, 424, 4);
2001 static void test_pack_LPDISPLAY_DEVICEW(void)
2003 /* LPDISPLAY_DEVICEW */
2004 TEST_TYPE(LPDISPLAY_DEVICEW, 4, 4);
2005 TEST_TYPE_POINTER(LPDISPLAY_DEVICEW, 840, 4);
2008 static void test_pack_LPDOCINFOA(void)
2011 TEST_TYPE(LPDOCINFOA, 4, 4);
2012 TEST_TYPE_POINTER(LPDOCINFOA, 20, 4);
2015 static void test_pack_LPDOCINFOW(void)
2018 TEST_TYPE(LPDOCINFOW, 4, 4);
2019 TEST_TYPE_POINTER(LPDOCINFOW, 20, 4);
2022 static void test_pack_LPENHMETAHEADER(void)
2024 /* LPENHMETAHEADER */
2025 TEST_TYPE(LPENHMETAHEADER, 4, 4);
2026 TEST_TYPE_POINTER(LPENHMETAHEADER, 108, 4);
2029 static void test_pack_LPENHMETARECORD(void)
2031 /* LPENHMETARECORD */
2032 TEST_TYPE(LPENHMETARECORD, 4, 4);
2033 TEST_TYPE_POINTER(LPENHMETARECORD, 12, 4);
2036 static void test_pack_LPENUMLOGFONTA(void)
2038 /* LPENUMLOGFONTA */
2039 TEST_TYPE(LPENUMLOGFONTA, 4, 4);
2040 TEST_TYPE_POINTER(LPENUMLOGFONTA, 156, 4);
2043 static void test_pack_LPENUMLOGFONTEXA(void)
2045 /* LPENUMLOGFONTEXA */
2046 TEST_TYPE(LPENUMLOGFONTEXA, 4, 4);
2047 TEST_TYPE_POINTER(LPENUMLOGFONTEXA, 188, 4);
2050 static void test_pack_LPENUMLOGFONTEXW(void)
2052 /* LPENUMLOGFONTEXW */
2053 TEST_TYPE(LPENUMLOGFONTEXW, 4, 4);
2054 TEST_TYPE_POINTER(LPENUMLOGFONTEXW, 348, 4);
2057 static void test_pack_LPENUMLOGFONTW(void)
2059 /* LPENUMLOGFONTW */
2060 TEST_TYPE(LPENUMLOGFONTW, 4, 4);
2061 TEST_TYPE_POINTER(LPENUMLOGFONTW, 284, 4);
2064 static void test_pack_LPEXTLOGFONTA(void)
2067 TEST_TYPE(LPEXTLOGFONTA, 4, 4);
2068 TEST_TYPE_POINTER(LPEXTLOGFONTA, 192, 4);
2071 static void test_pack_LPEXTLOGFONTW(void)
2074 TEST_TYPE(LPEXTLOGFONTW, 4, 4);
2075 TEST_TYPE_POINTER(LPEXTLOGFONTW, 320, 4);
2078 static void test_pack_LPEXTLOGPEN(void)
2081 TEST_TYPE(LPEXTLOGPEN, 4, 4);
2082 TEST_TYPE_POINTER(LPEXTLOGPEN, 28, 4);
2085 static void test_pack_LPFONTSIGNATURE(void)
2087 /* LPFONTSIGNATURE */
2088 TEST_TYPE(LPFONTSIGNATURE, 4, 4);
2089 TEST_TYPE_POINTER(LPFONTSIGNATURE, 24, 4);
2092 static void test_pack_LPGCP_RESULTSA(void)
2094 /* LPGCP_RESULTSA */
2095 TEST_TYPE(LPGCP_RESULTSA, 4, 4);
2096 TEST_TYPE_POINTER(LPGCP_RESULTSA, 36, 4);
2099 static void test_pack_LPGCP_RESULTSW(void)
2101 /* LPGCP_RESULTSW */
2102 TEST_TYPE(LPGCP_RESULTSW, 4, 4);
2103 TEST_TYPE_POINTER(LPGCP_RESULTSW, 36, 4);
2106 static void test_pack_LPGLYPHMETRICS(void)
2108 /* LPGLYPHMETRICS */
2109 TEST_TYPE(LPGLYPHMETRICS, 4, 4);
2110 TEST_TYPE_POINTER(LPGLYPHMETRICS, 20, 4);
2113 static void test_pack_LPGLYPHMETRICSFLOAT(void)
2115 /* LPGLYPHMETRICSFLOAT */
2116 TEST_TYPE(LPGLYPHMETRICSFLOAT, 4, 4);
2117 TEST_TYPE_POINTER(LPGLYPHMETRICSFLOAT, 24, 4);
2120 static void test_pack_LPGRADIENT_RECT(void)
2122 /* LPGRADIENT_RECT */
2123 TEST_TYPE(LPGRADIENT_RECT, 4, 4);
2124 TEST_TYPE_POINTER(LPGRADIENT_RECT, 8, 4);
2127 static void test_pack_LPGRADIENT_TRIANGLE(void)
2129 /* LPGRADIENT_TRIANGLE */
2130 TEST_TYPE(LPGRADIENT_TRIANGLE, 4, 4);
2131 TEST_TYPE_POINTER(LPGRADIENT_TRIANGLE, 12, 4);
2134 static void test_pack_LPHANDLETABLE(void)
2137 TEST_TYPE(LPHANDLETABLE, 4, 4);
2138 TEST_TYPE_POINTER(LPHANDLETABLE, 4, 4);
2141 static void test_pack_LPKERNINGPAIR(void)
2144 TEST_TYPE(LPKERNINGPAIR, 4, 4);
2145 TEST_TYPE_POINTER(LPKERNINGPAIR, 8, 4);
2148 static void test_pack_LPLAYERPLANEDESCRIPTOR(void)
2150 /* LPLAYERPLANEDESCRIPTOR */
2151 TEST_TYPE(LPLAYERPLANEDESCRIPTOR, 4, 4);
2152 TEST_TYPE_POINTER(LPLAYERPLANEDESCRIPTOR, 32, 4);
2155 static void test_pack_LPLOCALESIGNATURE(void)
2157 /* LPLOCALESIGNATURE */
2158 TEST_TYPE(LPLOCALESIGNATURE, 4, 4);
2159 TEST_TYPE_POINTER(LPLOCALESIGNATURE, 32, 4);
2162 static void test_pack_LPLOGBRUSH(void)
2165 TEST_TYPE(LPLOGBRUSH, 4, 4);
2166 TEST_TYPE_POINTER(LPLOGBRUSH, 12, 4);
2169 static void test_pack_LPLOGCOLORSPACEA(void)
2171 /* LPLOGCOLORSPACEA */
2172 TEST_TYPE(LPLOGCOLORSPACEA, 4, 4);
2173 TEST_TYPE_POINTER(LPLOGCOLORSPACEA, 328, 4);
2176 static void test_pack_LPLOGCOLORSPACEW(void)
2178 /* LPLOGCOLORSPACEW */
2179 TEST_TYPE(LPLOGCOLORSPACEW, 4, 4);
2180 TEST_TYPE_POINTER(LPLOGCOLORSPACEW, 588, 4);
2183 static void test_pack_LPLOGFONTA(void)
2186 TEST_TYPE(LPLOGFONTA, 4, 4);
2187 TEST_TYPE_POINTER(LPLOGFONTA, 60, 4);
2190 static void test_pack_LPLOGFONTW(void)
2193 TEST_TYPE(LPLOGFONTW, 4, 4);
2194 TEST_TYPE_POINTER(LPLOGFONTW, 92, 4);
2197 static void test_pack_LPLOGPEN(void)
2200 TEST_TYPE(LPLOGPEN, 4, 4);
2201 TEST_TYPE_POINTER(LPLOGPEN, 16, 4);
2204 static void test_pack_LPMAT2(void)
2207 TEST_TYPE(LPMAT2, 4, 4);
2208 TEST_TYPE_POINTER(LPMAT2, 16, 2);
2211 static void test_pack_LPMETAFILEPICT(void)
2213 /* LPMETAFILEPICT */
2214 TEST_TYPE(LPMETAFILEPICT, 4, 4);
2215 TEST_TYPE_POINTER(LPMETAFILEPICT, 16, 4);
2218 static void test_pack_LPMETAHEADER(void)
2221 TEST_TYPE(LPMETAHEADER, 4, 4);
2222 TEST_TYPE_POINTER(LPMETAHEADER, 18, 2);
2225 static void test_pack_LPMETARECORD(void)
2228 TEST_TYPE(LPMETARECORD, 4, 4);
2229 TEST_TYPE_POINTER(LPMETARECORD, 8, 4);
2232 static void test_pack_LPNEWTEXTMETRICA(void)
2234 /* LPNEWTEXTMETRICA */
2235 TEST_TYPE(LPNEWTEXTMETRICA, 4, 4);
2236 TEST_TYPE_POINTER(LPNEWTEXTMETRICA, 72, 4);
2239 static void test_pack_LPNEWTEXTMETRICW(void)
2241 /* LPNEWTEXTMETRICW */
2242 TEST_TYPE(LPNEWTEXTMETRICW, 4, 4);
2243 TEST_TYPE_POINTER(LPNEWTEXTMETRICW, 76, 4);
2246 static void test_pack_LPOUTLINETEXTMETRICA(void)
2248 /* LPOUTLINETEXTMETRICA */
2249 TEST_TYPE(LPOUTLINETEXTMETRICA, 4, 4);
2250 TEST_TYPE_POINTER(LPOUTLINETEXTMETRICA, 212, 4);
2253 static void test_pack_LPOUTLINETEXTMETRICW(void)
2255 /* LPOUTLINETEXTMETRICW */
2256 TEST_TYPE(LPOUTLINETEXTMETRICW, 4, 4);
2257 TEST_TYPE_POINTER(LPOUTLINETEXTMETRICW, 216, 4);
2260 static void test_pack_LPPANOSE(void)
2263 TEST_TYPE(LPPANOSE, 4, 4);
2264 TEST_TYPE_POINTER(LPPANOSE, 10, 1);
2267 static void test_pack_LPPELARRAY(void)
2270 TEST_TYPE(LPPELARRAY, 4, 4);
2271 TEST_TYPE_POINTER(LPPELARRAY, 20, 4);
2274 static void test_pack_LPPIXELFORMATDESCRIPTOR(void)
2276 /* LPPIXELFORMATDESCRIPTOR */
2277 TEST_TYPE(LPPIXELFORMATDESCRIPTOR, 4, 4);
2278 TEST_TYPE_POINTER(LPPIXELFORMATDESCRIPTOR, 40, 4);
2281 static void test_pack_LPPOINTFX(void)
2284 TEST_TYPE(LPPOINTFX, 4, 4);
2285 TEST_TYPE_POINTER(LPPOINTFX, 8, 2);
2288 static void test_pack_LPPOLYTEXTA(void)
2291 TEST_TYPE(LPPOLYTEXTA, 4, 4);
2292 TEST_TYPE_POINTER(LPPOLYTEXTA, 40, 4);
2295 static void test_pack_LPPOLYTEXTW(void)
2298 TEST_TYPE(LPPOLYTEXTW, 4, 4);
2299 TEST_TYPE_POINTER(LPPOLYTEXTW, 40, 4);
2302 static void test_pack_LPRASTERIZER_STATUS(void)
2304 /* LPRASTERIZER_STATUS */
2305 TEST_TYPE(LPRASTERIZER_STATUS, 4, 4);
2306 TEST_TYPE_POINTER(LPRASTERIZER_STATUS, 6, 2);
2309 static void test_pack_LPRGBQUAD(void)
2312 TEST_TYPE(LPRGBQUAD, 4, 4);
2313 TEST_TYPE_POINTER(LPRGBQUAD, 4, 1);
2316 static void test_pack_LPRGNDATA(void)
2319 TEST_TYPE(LPRGNDATA, 4, 4);
2320 TEST_TYPE_POINTER(LPRGNDATA, 36, 4);
2323 static void test_pack_LPTEXTMETRICA(void)
2326 TEST_TYPE(LPTEXTMETRICA, 4, 4);
2327 TEST_TYPE_POINTER(LPTEXTMETRICA, 56, 4);
2330 static void test_pack_LPTEXTMETRICW(void)
2333 TEST_TYPE(LPTEXTMETRICW, 4, 4);
2334 TEST_TYPE_POINTER(LPTEXTMETRICW, 60, 4);
2337 static void test_pack_LPTRIVERTEX(void)
2340 TEST_TYPE(LPTRIVERTEX, 4, 4);
2341 TEST_TYPE_POINTER(LPTRIVERTEX, 16, 4);
2344 static void test_pack_LPTTPOLYCURVE(void)
2347 TEST_TYPE(LPTTPOLYCURVE, 4, 4);
2348 TEST_TYPE_POINTER(LPTTPOLYCURVE, 12, 2);
2351 static void test_pack_LPTTPOLYGONHEADER(void)
2353 /* LPTTPOLYGONHEADER */
2354 TEST_TYPE(LPTTPOLYGONHEADER, 4, 4);
2355 TEST_TYPE_POINTER(LPTTPOLYGONHEADER, 16, 4);
2358 static void test_pack_LPXFORM(void)
2361 TEST_TYPE(LPXFORM, 4, 4);
2362 TEST_TYPE_POINTER(LPXFORM, 24, 4);
2365 static void test_pack_MAT2(void)
2368 TEST_TYPE(MAT2, 16, 2);
2369 TEST_FIELD(MAT2, FIXED, eM11, 0, 4, 2);
2370 TEST_FIELD(MAT2, FIXED, eM12, 4, 4, 2);
2371 TEST_FIELD(MAT2, FIXED, eM21, 8, 4, 2);
2372 TEST_FIELD(MAT2, FIXED, eM22, 12, 4, 2);
2375 static void test_pack_METAFILEPICT(void)
2377 /* METAFILEPICT (pack 4) */
2378 TEST_TYPE(METAFILEPICT, 16, 4);
2379 TEST_FIELD(METAFILEPICT, LONG, mm, 0, 4, 4);
2380 TEST_FIELD(METAFILEPICT, LONG, xExt, 4, 4, 4);
2381 TEST_FIELD(METAFILEPICT, LONG, yExt, 8, 4, 4);
2382 TEST_FIELD(METAFILEPICT, HMETAFILE, hMF, 12, 4, 4);
2385 static void test_pack_METAHEADER(void)
2387 /* METAHEADER (pack 2) */
2388 TEST_TYPE(METAHEADER, 18, 2);
2389 TEST_FIELD(METAHEADER, WORD, mtType, 0, 2, 2);
2390 TEST_FIELD(METAHEADER, WORD, mtHeaderSize, 2, 2, 2);
2391 TEST_FIELD(METAHEADER, WORD, mtVersion, 4, 2, 2);
2392 TEST_FIELD(METAHEADER, DWORD, mtSize, 6, 4, 2);
2393 TEST_FIELD(METAHEADER, WORD, mtNoObjects, 10, 2, 2);
2394 TEST_FIELD(METAHEADER, DWORD, mtMaxRecord, 12, 4, 2);
2395 TEST_FIELD(METAHEADER, WORD, mtNoParameters, 16, 2, 2);
2398 static void test_pack_METARECORD(void)
2400 /* METARECORD (pack 4) */
2401 TEST_TYPE(METARECORD, 8, 4);
2402 TEST_FIELD(METARECORD, DWORD, rdSize, 0, 4, 4);
2403 TEST_FIELD(METARECORD, WORD, rdFunction, 4, 2, 2);
2404 TEST_FIELD(METARECORD, WORD[1], rdParm, 6, 2, 2);
2407 static void test_pack_MFENUMPROC(void)
2410 TEST_TYPE(MFENUMPROC, 4, 4);
2413 static void test_pack_NEWTEXTMETRICA(void)
2415 /* NEWTEXTMETRICA (pack 4) */
2416 TEST_TYPE(NEWTEXTMETRICA, 72, 4);
2417 TEST_FIELD(NEWTEXTMETRICA, LONG, tmHeight, 0, 4, 4);
2418 TEST_FIELD(NEWTEXTMETRICA, LONG, tmAscent, 4, 4, 4);
2419 TEST_FIELD(NEWTEXTMETRICA, LONG, tmDescent, 8, 4, 4);
2420 TEST_FIELD(NEWTEXTMETRICA, LONG, tmInternalLeading, 12, 4, 4);
2421 TEST_FIELD(NEWTEXTMETRICA, LONG, tmExternalLeading, 16, 4, 4);
2422 TEST_FIELD(NEWTEXTMETRICA, LONG, tmAveCharWidth, 20, 4, 4);
2423 TEST_FIELD(NEWTEXTMETRICA, LONG, tmMaxCharWidth, 24, 4, 4);
2424 TEST_FIELD(NEWTEXTMETRICA, LONG, tmWeight, 28, 4, 4);
2425 TEST_FIELD(NEWTEXTMETRICA, LONG, tmOverhang, 32, 4, 4);
2426 TEST_FIELD(NEWTEXTMETRICA, LONG, tmDigitizedAspectX, 36, 4, 4);
2427 TEST_FIELD(NEWTEXTMETRICA, LONG, tmDigitizedAspectY, 40, 4, 4);
2428 TEST_FIELD(NEWTEXTMETRICA, BYTE, tmFirstChar, 44, 1, 1);
2429 TEST_FIELD(NEWTEXTMETRICA, BYTE, tmLastChar, 45, 1, 1);
2430 TEST_FIELD(NEWTEXTMETRICA, BYTE, tmDefaultChar, 46, 1, 1);
2431 TEST_FIELD(NEWTEXTMETRICA, BYTE, tmBreakChar, 47, 1, 1);
2432 TEST_FIELD(NEWTEXTMETRICA, BYTE, tmItalic, 48, 1, 1);
2433 TEST_FIELD(NEWTEXTMETRICA, BYTE, tmUnderlined, 49, 1, 1);
2434 TEST_FIELD(NEWTEXTMETRICA, BYTE, tmStruckOut, 50, 1, 1);
2435 TEST_FIELD(NEWTEXTMETRICA, BYTE, tmPitchAndFamily, 51, 1, 1);
2436 TEST_FIELD(NEWTEXTMETRICA, BYTE, tmCharSet, 52, 1, 1);
2437 TEST_FIELD(NEWTEXTMETRICA, DWORD, ntmFlags, 56, 4, 4);
2438 TEST_FIELD(NEWTEXTMETRICA, UINT, ntmSizeEM, 60, 4, 4);
2439 TEST_FIELD(NEWTEXTMETRICA, UINT, ntmCellHeight, 64, 4, 4);
2440 TEST_FIELD(NEWTEXTMETRICA, UINT, ntmAvgWidth, 68, 4, 4);
2443 static void test_pack_NEWTEXTMETRICEXA(void)
2445 /* NEWTEXTMETRICEXA (pack 4) */
2446 TEST_TYPE(NEWTEXTMETRICEXA, 96, 4);
2447 TEST_FIELD(NEWTEXTMETRICEXA, NEWTEXTMETRICA, ntmTm, 0, 72, 4);
2448 TEST_FIELD(NEWTEXTMETRICEXA, FONTSIGNATURE, ntmFontSig, 72, 24, 4);
2451 static void test_pack_NEWTEXTMETRICEXW(void)
2453 /* NEWTEXTMETRICEXW (pack 4) */
2454 TEST_TYPE(NEWTEXTMETRICEXW, 100, 4);
2455 TEST_FIELD(NEWTEXTMETRICEXW, NEWTEXTMETRICW, ntmTm, 0, 76, 4);
2456 TEST_FIELD(NEWTEXTMETRICEXW, FONTSIGNATURE, ntmFontSig, 76, 24, 4);
2459 static void test_pack_NEWTEXTMETRICW(void)
2461 /* NEWTEXTMETRICW (pack 4) */
2462 TEST_TYPE(NEWTEXTMETRICW, 76, 4);
2463 TEST_FIELD(NEWTEXTMETRICW, LONG, tmHeight, 0, 4, 4);
2464 TEST_FIELD(NEWTEXTMETRICW, LONG, tmAscent, 4, 4, 4);
2465 TEST_FIELD(NEWTEXTMETRICW, LONG, tmDescent, 8, 4, 4);
2466 TEST_FIELD(NEWTEXTMETRICW, LONG, tmInternalLeading, 12, 4, 4);
2467 TEST_FIELD(NEWTEXTMETRICW, LONG, tmExternalLeading, 16, 4, 4);
2468 TEST_FIELD(NEWTEXTMETRICW, LONG, tmAveCharWidth, 20, 4, 4);
2469 TEST_FIELD(NEWTEXTMETRICW, LONG, tmMaxCharWidth, 24, 4, 4);
2470 TEST_FIELD(NEWTEXTMETRICW, LONG, tmWeight, 28, 4, 4);
2471 TEST_FIELD(NEWTEXTMETRICW, LONG, tmOverhang, 32, 4, 4);
2472 TEST_FIELD(NEWTEXTMETRICW, LONG, tmDigitizedAspectX, 36, 4, 4);
2473 TEST_FIELD(NEWTEXTMETRICW, LONG, tmDigitizedAspectY, 40, 4, 4);
2474 TEST_FIELD(NEWTEXTMETRICW, WCHAR, tmFirstChar, 44, 2, 2);
2475 TEST_FIELD(NEWTEXTMETRICW, WCHAR, tmLastChar, 46, 2, 2);
2476 TEST_FIELD(NEWTEXTMETRICW, WCHAR, tmDefaultChar, 48, 2, 2);
2477 TEST_FIELD(NEWTEXTMETRICW, WCHAR, tmBreakChar, 50, 2, 2);
2478 TEST_FIELD(NEWTEXTMETRICW, BYTE, tmItalic, 52, 1, 1);
2479 TEST_FIELD(NEWTEXTMETRICW, BYTE, tmUnderlined, 53, 1, 1);
2480 TEST_FIELD(NEWTEXTMETRICW, BYTE, tmStruckOut, 54, 1, 1);
2481 TEST_FIELD(NEWTEXTMETRICW, BYTE, tmPitchAndFamily, 55, 1, 1);
2482 TEST_FIELD(NEWTEXTMETRICW, BYTE, tmCharSet, 56, 1, 1);
2483 TEST_FIELD(NEWTEXTMETRICW, DWORD, ntmFlags, 60, 4, 4);
2484 TEST_FIELD(NEWTEXTMETRICW, UINT, ntmSizeEM, 64, 4, 4);
2485 TEST_FIELD(NEWTEXTMETRICW, UINT, ntmCellHeight, 68, 4, 4);
2486 TEST_FIELD(NEWTEXTMETRICW, UINT, ntmAvgWidth, 72, 4, 4);
2489 static void test_pack_NPEXTLOGPEN(void)
2492 TEST_TYPE(NPEXTLOGPEN, 4, 4);
2493 TEST_TYPE_POINTER(NPEXTLOGPEN, 28, 4);
2496 static void test_pack_OLDFONTENUMPROC(void)
2498 /* OLDFONTENUMPROC */
2499 TEST_TYPE(OLDFONTENUMPROC, 4, 4);
2502 static void test_pack_OLDFONTENUMPROCA(void)
2504 /* OLDFONTENUMPROCA */
2505 TEST_TYPE(OLDFONTENUMPROCA, 4, 4);
2508 static void test_pack_OLDFONTENUMPROCW(void)
2510 /* OLDFONTENUMPROCW */
2511 TEST_TYPE(OLDFONTENUMPROCW, 4, 4);
2514 static void test_pack_OUTLINETEXTMETRICA(void)
2516 /* OUTLINETEXTMETRICA (pack 4) */
2517 TEST_TYPE(OUTLINETEXTMETRICA, 212, 4);
2518 TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmSize, 0, 4, 4);
2519 TEST_FIELD(OUTLINETEXTMETRICA, TEXTMETRICA, otmTextMetrics, 4, 56, 4);
2520 TEST_FIELD(OUTLINETEXTMETRICA, BYTE, otmFiller, 60, 1, 1);
2521 TEST_FIELD(OUTLINETEXTMETRICA, PANOSE, otmPanoseNumber, 61, 10, 1);
2522 TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmfsSelection, 72, 4, 4);
2523 TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmfsType, 76, 4, 4);
2524 TEST_FIELD(OUTLINETEXTMETRICA, INT, otmsCharSlopeRise, 80, 4, 4);
2525 TEST_FIELD(OUTLINETEXTMETRICA, INT, otmsCharSlopeRun, 84, 4, 4);
2526 TEST_FIELD(OUTLINETEXTMETRICA, INT, otmItalicAngle, 88, 4, 4);
2527 TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmEMSquare, 92, 4, 4);
2528 TEST_FIELD(OUTLINETEXTMETRICA, INT, otmAscent, 96, 4, 4);
2529 TEST_FIELD(OUTLINETEXTMETRICA, INT, otmDescent, 100, 4, 4);
2530 TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmLineGap, 104, 4, 4);
2531 TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmsCapEmHeight, 108, 4, 4);
2532 TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmsXHeight, 112, 4, 4);
2533 TEST_FIELD(OUTLINETEXTMETRICA, RECT, otmrcFontBox, 116, 16, 4);
2534 TEST_FIELD(OUTLINETEXTMETRICA, INT, otmMacAscent, 132, 4, 4);
2535 TEST_FIELD(OUTLINETEXTMETRICA, INT, otmMacDescent, 136, 4, 4);
2536 TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmMacLineGap, 140, 4, 4);
2537 TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmusMinimumPPEM, 144, 4, 4);
2538 TEST_FIELD(OUTLINETEXTMETRICA, POINT, otmptSubscriptSize, 148, 8, 4);
2539 TEST_FIELD(OUTLINETEXTMETRICA, POINT, otmptSubscriptOffset, 156, 8, 4);
2540 TEST_FIELD(OUTLINETEXTMETRICA, POINT, otmptSuperscriptSize, 164, 8, 4);
2541 TEST_FIELD(OUTLINETEXTMETRICA, POINT, otmptSuperscriptOffset, 172, 8, 4);
2542 TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmsStrikeoutSize, 180, 4, 4);
2543 TEST_FIELD(OUTLINETEXTMETRICA, INT, otmsStrikeoutPosition, 184, 4, 4);
2544 TEST_FIELD(OUTLINETEXTMETRICA, INT, otmsUnderscoreSize, 188, 4, 4);
2545 TEST_FIELD(OUTLINETEXTMETRICA, INT, otmsUnderscorePosition, 192, 4, 4);
2546 TEST_FIELD(OUTLINETEXTMETRICA, LPSTR, otmpFamilyName, 196, 4, 4);
2547 TEST_FIELD(OUTLINETEXTMETRICA, LPSTR, otmpFaceName, 200, 4, 4);
2548 TEST_FIELD(OUTLINETEXTMETRICA, LPSTR, otmpStyleName, 204, 4, 4);
2549 TEST_FIELD(OUTLINETEXTMETRICA, LPSTR, otmpFullName, 208, 4, 4);
2552 static void test_pack_OUTLINETEXTMETRICW(void)
2554 /* OUTLINETEXTMETRICW (pack 4) */
2555 TEST_TYPE(OUTLINETEXTMETRICW, 216, 4);
2556 TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmSize, 0, 4, 4);
2557 TEST_FIELD(OUTLINETEXTMETRICW, TEXTMETRICW, otmTextMetrics, 4, 60, 4);
2558 TEST_FIELD(OUTLINETEXTMETRICW, BYTE, otmFiller, 64, 1, 1);
2559 TEST_FIELD(OUTLINETEXTMETRICW, PANOSE, otmPanoseNumber, 65, 10, 1);
2560 TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmfsSelection, 76, 4, 4);
2561 TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmfsType, 80, 4, 4);
2562 TEST_FIELD(OUTLINETEXTMETRICW, INT, otmsCharSlopeRise, 84, 4, 4);
2563 TEST_FIELD(OUTLINETEXTMETRICW, INT, otmsCharSlopeRun, 88, 4, 4);
2564 TEST_FIELD(OUTLINETEXTMETRICW, INT, otmItalicAngle, 92, 4, 4);
2565 TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmEMSquare, 96, 4, 4);
2566 TEST_FIELD(OUTLINETEXTMETRICW, INT, otmAscent, 100, 4, 4);
2567 TEST_FIELD(OUTLINETEXTMETRICW, INT, otmDescent, 104, 4, 4);
2568 TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmLineGap, 108, 4, 4);
2569 TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmsCapEmHeight, 112, 4, 4);
2570 TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmsXHeight, 116, 4, 4);
2571 TEST_FIELD(OUTLINETEXTMETRICW, RECT, otmrcFontBox, 120, 16, 4);
2572 TEST_FIELD(OUTLINETEXTMETRICW, INT, otmMacAscent, 136, 4, 4);
2573 TEST_FIELD(OUTLINETEXTMETRICW, INT, otmMacDescent, 140, 4, 4);
2574 TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmMacLineGap, 144, 4, 4);
2575 TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmusMinimumPPEM, 148, 4, 4);
2576 TEST_FIELD(OUTLINETEXTMETRICW, POINT, otmptSubscriptSize, 152, 8, 4);
2577 TEST_FIELD(OUTLINETEXTMETRICW, POINT, otmptSubscriptOffset, 160, 8, 4);
2578 TEST_FIELD(OUTLINETEXTMETRICW, POINT, otmptSuperscriptSize, 168, 8, 4);
2579 TEST_FIELD(OUTLINETEXTMETRICW, POINT, otmptSuperscriptOffset, 176, 8, 4);
2580 TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmsStrikeoutSize, 184, 4, 4);
2581 TEST_FIELD(OUTLINETEXTMETRICW, INT, otmsStrikeoutPosition, 188, 4, 4);
2582 TEST_FIELD(OUTLINETEXTMETRICW, INT, otmsUnderscoreSize, 192, 4, 4);
2583 TEST_FIELD(OUTLINETEXTMETRICW, INT, otmsUnderscorePosition, 196, 4, 4);
2584 TEST_FIELD(OUTLINETEXTMETRICW, LPSTR, otmpFamilyName, 200, 4, 4);
2585 TEST_FIELD(OUTLINETEXTMETRICW, LPSTR, otmpFaceName, 204, 4, 4);
2586 TEST_FIELD(OUTLINETEXTMETRICW, LPSTR, otmpStyleName, 208, 4, 4);
2587 TEST_FIELD(OUTLINETEXTMETRICW, LPSTR, otmpFullName, 212, 4, 4);
2590 static void test_pack_PABC(void)
2593 TEST_TYPE(PABC, 4, 4);
2594 TEST_TYPE_POINTER(PABC, 12, 4);
2597 static void test_pack_PABCFLOAT(void)
2600 TEST_TYPE(PABCFLOAT, 4, 4);
2601 TEST_TYPE_POINTER(PABCFLOAT, 12, 4);
2604 static void test_pack_PANOSE(void)
2606 /* PANOSE (pack 4) */
2607 TEST_TYPE(PANOSE, 10, 1);
2608 TEST_FIELD(PANOSE, BYTE, bFamilyType, 0, 1, 1);
2609 TEST_FIELD(PANOSE, BYTE, bSerifStyle, 1, 1, 1);
2610 TEST_FIELD(PANOSE, BYTE, bWeight, 2, 1, 1);
2611 TEST_FIELD(PANOSE, BYTE, bProportion, 3, 1, 1);
2612 TEST_FIELD(PANOSE, BYTE, bContrast, 4, 1, 1);
2613 TEST_FIELD(PANOSE, BYTE, bStrokeVariation, 5, 1, 1);
2614 TEST_FIELD(PANOSE, BYTE, bArmStyle, 6, 1, 1);
2615 TEST_FIELD(PANOSE, BYTE, bLetterform, 7, 1, 1);
2616 TEST_FIELD(PANOSE, BYTE, bMidline, 8, 1, 1);
2617 TEST_FIELD(PANOSE, BYTE, bXHeight, 9, 1, 1);
2620 static void test_pack_PATTERN(void)
2623 TEST_TYPE(PATTERN, 12, 4);
2626 static void test_pack_PBITMAP(void)
2629 TEST_TYPE(PBITMAP, 4, 4);
2630 TEST_TYPE_POINTER(PBITMAP, 24, 4);
2633 static void test_pack_PBITMAPCOREHEADER(void)
2635 /* PBITMAPCOREHEADER */
2636 TEST_TYPE(PBITMAPCOREHEADER, 4, 4);
2637 TEST_TYPE_POINTER(PBITMAPCOREHEADER, 12, 4);
2640 static void test_pack_PBITMAPCOREINFO(void)
2642 /* PBITMAPCOREINFO */
2643 TEST_TYPE(PBITMAPCOREINFO, 4, 4);
2644 TEST_TYPE_POINTER(PBITMAPCOREINFO, 16, 4);
2647 static void test_pack_PBITMAPFILEHEADER(void)
2649 /* PBITMAPFILEHEADER */
2650 TEST_TYPE(PBITMAPFILEHEADER, 4, 4);
2651 TEST_TYPE_POINTER(PBITMAPFILEHEADER, 14, 2);
2654 static void test_pack_PBITMAPINFO(void)
2657 TEST_TYPE(PBITMAPINFO, 4, 4);
2658 TEST_TYPE_POINTER(PBITMAPINFO, 44, 4);
2661 static void test_pack_PBITMAPINFOHEADER(void)
2663 /* PBITMAPINFOHEADER */
2664 TEST_TYPE(PBITMAPINFOHEADER, 4, 4);
2665 TEST_TYPE_POINTER(PBITMAPINFOHEADER, 40, 4);
2668 static void test_pack_PBITMAPV4HEADER(void)
2670 /* PBITMAPV4HEADER */
2671 TEST_TYPE(PBITMAPV4HEADER, 4, 4);
2672 TEST_TYPE_POINTER(PBITMAPV4HEADER, 108, 4);
2675 static void test_pack_PBITMAPV5HEADER(void)
2677 /* PBITMAPV5HEADER */
2678 TEST_TYPE(PBITMAPV5HEADER, 4, 4);
2679 TEST_TYPE_POINTER(PBITMAPV5HEADER, 124, 4);
2682 static void test_pack_PBLENDFUNCTION(void)
2684 /* PBLENDFUNCTION */
2685 TEST_TYPE(PBLENDFUNCTION, 4, 4);
2686 TEST_TYPE_POINTER(PBLENDFUNCTION, 4, 1);
2689 static void test_pack_PCHARSETINFO(void)
2692 TEST_TYPE(PCHARSETINFO, 4, 4);
2693 TEST_TYPE_POINTER(PCHARSETINFO, 32, 4);
2696 static void test_pack_PCOLORADJUSTMENT(void)
2698 /* PCOLORADJUSTMENT */
2699 TEST_TYPE(PCOLORADJUSTMENT, 4, 4);
2700 TEST_TYPE_POINTER(PCOLORADJUSTMENT, 24, 2);
2703 static void test_pack_PDEVMODEA(void)
2706 TEST_TYPE(PDEVMODEA, 4, 4);
2709 static void test_pack_PDEVMODEW(void)
2712 TEST_TYPE(PDEVMODEW, 4, 4);
2715 static void test_pack_PDIBSECTION(void)
2718 TEST_TYPE(PDIBSECTION, 4, 4);
2719 TEST_TYPE_POINTER(PDIBSECTION, 84, 4);
2722 static void test_pack_PDISPLAY_DEVICEA(void)
2724 /* PDISPLAY_DEVICEA */
2725 TEST_TYPE(PDISPLAY_DEVICEA, 4, 4);
2726 TEST_TYPE_POINTER(PDISPLAY_DEVICEA, 424, 4);
2729 static void test_pack_PDISPLAY_DEVICEW(void)
2731 /* PDISPLAY_DEVICEW */
2732 TEST_TYPE(PDISPLAY_DEVICEW, 4, 4);
2733 TEST_TYPE_POINTER(PDISPLAY_DEVICEW, 840, 4);
2736 static void test_pack_PELARRAY(void)
2738 /* PELARRAY (pack 4) */
2739 TEST_TYPE(PELARRAY, 20, 4);
2740 TEST_FIELD(PELARRAY, LONG, paXCount, 0, 4, 4);
2741 TEST_FIELD(PELARRAY, LONG, paYCount, 4, 4, 4);
2742 TEST_FIELD(PELARRAY, LONG, paXExt, 8, 4, 4);
2743 TEST_FIELD(PELARRAY, LONG, paYExt, 12, 4, 4);
2744 TEST_FIELD(PELARRAY, BYTE, paRGBs, 16, 1, 1);
2747 static void test_pack_PEMR(void)
2750 TEST_TYPE(PEMR, 4, 4);
2751 TEST_TYPE_POINTER(PEMR, 8, 4);
2754 static void test_pack_PEMRABORTPATH(void)
2757 TEST_TYPE(PEMRABORTPATH, 4, 4);
2758 TEST_TYPE_POINTER(PEMRABORTPATH, 8, 4);
2761 static void test_pack_PEMRANGLEARC(void)
2764 TEST_TYPE(PEMRANGLEARC, 4, 4);
2765 TEST_TYPE_POINTER(PEMRANGLEARC, 28, 4);
2768 static void test_pack_PEMRARC(void)
2771 TEST_TYPE(PEMRARC, 4, 4);
2772 TEST_TYPE_POINTER(PEMRARC, 40, 4);
2775 static void test_pack_PEMRARCTO(void)
2778 TEST_TYPE(PEMRARCTO, 4, 4);
2779 TEST_TYPE_POINTER(PEMRARCTO, 40, 4);
2782 static void test_pack_PEMRBEGINPATH(void)
2785 TEST_TYPE(PEMRBEGINPATH, 4, 4);
2786 TEST_TYPE_POINTER(PEMRBEGINPATH, 8, 4);
2789 static void test_pack_PEMRBITBLT(void)
2792 TEST_TYPE(PEMRBITBLT, 4, 4);
2793 TEST_TYPE_POINTER(PEMRBITBLT, 100, 4);
2796 static void test_pack_PEMRCHORD(void)
2799 TEST_TYPE(PEMRCHORD, 4, 4);
2800 TEST_TYPE_POINTER(PEMRCHORD, 40, 4);
2803 static void test_pack_PEMRCLOSEFIGURE(void)
2805 /* PEMRCLOSEFIGURE */
2806 TEST_TYPE(PEMRCLOSEFIGURE, 4, 4);
2807 TEST_TYPE_POINTER(PEMRCLOSEFIGURE, 8, 4);
2810 static void test_pack_PEMRCREATEBRUSHINDIRECT(void)
2812 /* PEMRCREATEBRUSHINDIRECT */
2813 TEST_TYPE(PEMRCREATEBRUSHINDIRECT, 4, 4);
2814 TEST_TYPE_POINTER(PEMRCREATEBRUSHINDIRECT, 24, 4);
2817 static void test_pack_PEMRCREATECOLORSPACE(void)
2819 /* PEMRCREATECOLORSPACE */
2820 TEST_TYPE(PEMRCREATECOLORSPACE, 4, 4);
2821 TEST_TYPE_POINTER(PEMRCREATECOLORSPACE, 340, 4);
2824 static void test_pack_PEMRCREATECOLORSPACEW(void)
2826 /* PEMRCREATECOLORSPACEW */
2827 TEST_TYPE(PEMRCREATECOLORSPACEW, 4, 4);
2828 TEST_TYPE_POINTER(PEMRCREATECOLORSPACEW, 612, 4);
2831 static void test_pack_PEMRCREATEDIBPATTERNBRUSHPT(void)
2833 /* PEMRCREATEDIBPATTERNBRUSHPT */
2834 TEST_TYPE(PEMRCREATEDIBPATTERNBRUSHPT, 4, 4);
2835 TEST_TYPE_POINTER(PEMRCREATEDIBPATTERNBRUSHPT, 32, 4);
2838 static void test_pack_PEMRCREATEMONOBRUSH(void)
2840 /* PEMRCREATEMONOBRUSH */
2841 TEST_TYPE(PEMRCREATEMONOBRUSH, 4, 4);
2842 TEST_TYPE_POINTER(PEMRCREATEMONOBRUSH, 32, 4);
2845 static void test_pack_PEMRCREATEPALETTE(void)
2847 /* PEMRCREATEPALETTE */
2848 TEST_TYPE(PEMRCREATEPALETTE, 4, 4);
2849 TEST_TYPE_POINTER(PEMRCREATEPALETTE, 20, 4);
2852 static void test_pack_PEMRCREATEPEN(void)
2855 TEST_TYPE(PEMRCREATEPEN, 4, 4);
2856 TEST_TYPE_POINTER(PEMRCREATEPEN, 28, 4);
2859 static void test_pack_PEMRDELETECOLORSPACE(void)
2861 /* PEMRDELETECOLORSPACE */
2862 TEST_TYPE(PEMRDELETECOLORSPACE, 4, 4);
2863 TEST_TYPE_POINTER(PEMRDELETECOLORSPACE, 12, 4);
2866 static void test_pack_PEMRDELETEOBJECT(void)
2868 /* PEMRDELETEOBJECT */
2869 TEST_TYPE(PEMRDELETEOBJECT, 4, 4);
2870 TEST_TYPE_POINTER(PEMRDELETEOBJECT, 12, 4);
2873 static void test_pack_PEMRELLIPSE(void)
2876 TEST_TYPE(PEMRELLIPSE, 4, 4);
2877 TEST_TYPE_POINTER(PEMRELLIPSE, 24, 4);
2880 static void test_pack_PEMRENDPATH(void)
2883 TEST_TYPE(PEMRENDPATH, 4, 4);
2884 TEST_TYPE_POINTER(PEMRENDPATH, 8, 4);
2887 static void test_pack_PEMREOF(void)
2890 TEST_TYPE(PEMREOF, 4, 4);
2891 TEST_TYPE_POINTER(PEMREOF, 20, 4);
2894 static void test_pack_PEMREXCLUDECLIPRECT(void)
2896 /* PEMREXCLUDECLIPRECT */
2897 TEST_TYPE(PEMREXCLUDECLIPRECT, 4, 4);
2898 TEST_TYPE_POINTER(PEMREXCLUDECLIPRECT, 24, 4);
2901 static void test_pack_PEMREXTCREATEFONTINDIRECTW(void)
2903 /* PEMREXTCREATEFONTINDIRECTW */
2904 TEST_TYPE(PEMREXTCREATEFONTINDIRECTW, 4, 4);
2905 TEST_TYPE_POINTER(PEMREXTCREATEFONTINDIRECTW, 332, 4);
2908 static void test_pack_PEMREXTCREATEPEN(void)
2910 /* PEMREXTCREATEPEN */
2911 TEST_TYPE(PEMREXTCREATEPEN, 4, 4);
2912 TEST_TYPE_POINTER(PEMREXTCREATEPEN, 56, 4);
2915 static void test_pack_PEMREXTFLOODFILL(void)
2917 /* PEMREXTFLOODFILL */
2918 TEST_TYPE(PEMREXTFLOODFILL, 4, 4);
2919 TEST_TYPE_POINTER(PEMREXTFLOODFILL, 24, 4);
2922 static void test_pack_PEMREXTSELECTCLIPRGN(void)
2924 /* PEMREXTSELECTCLIPRGN */
2925 TEST_TYPE(PEMREXTSELECTCLIPRGN, 4, 4);
2926 TEST_TYPE_POINTER(PEMREXTSELECTCLIPRGN, 20, 4);
2929 static void test_pack_PEMREXTTEXTOUTA(void)
2931 /* PEMREXTTEXTOUTA */
2932 TEST_TYPE(PEMREXTTEXTOUTA, 4, 4);
2933 TEST_TYPE_POINTER(PEMREXTTEXTOUTA, 76, 4);
2936 static void test_pack_PEMREXTTEXTOUTW(void)
2938 /* PEMREXTTEXTOUTW */
2939 TEST_TYPE(PEMREXTTEXTOUTW, 4, 4);
2940 TEST_TYPE_POINTER(PEMREXTTEXTOUTW, 76, 4);
2943 static void test_pack_PEMRFILLPATH(void)
2946 TEST_TYPE(PEMRFILLPATH, 4, 4);
2947 TEST_TYPE_POINTER(PEMRFILLPATH, 24, 4);
2950 static void test_pack_PEMRFILLRGN(void)
2953 TEST_TYPE(PEMRFILLRGN, 4, 4);
2954 TEST_TYPE_POINTER(PEMRFILLRGN, 36, 4);
2957 static void test_pack_PEMRFLATTENPATH(void)
2959 /* PEMRFLATTENPATH */
2960 TEST_TYPE(PEMRFLATTENPATH, 4, 4);
2961 TEST_TYPE_POINTER(PEMRFLATTENPATH, 8, 4);
2964 static void test_pack_PEMRFORMAT(void)
2967 TEST_TYPE(PEMRFORMAT, 4, 4);
2968 TEST_TYPE_POINTER(PEMRFORMAT, 16, 4);
2971 static void test_pack_PEMRFRAMERGN(void)
2974 TEST_TYPE(PEMRFRAMERGN, 4, 4);
2975 TEST_TYPE_POINTER(PEMRFRAMERGN, 44, 4);
2978 static void test_pack_PEMRGDICOMMENT(void)
2980 /* PEMRGDICOMMENT */
2981 TEST_TYPE(PEMRGDICOMMENT, 4, 4);
2982 TEST_TYPE_POINTER(PEMRGDICOMMENT, 16, 4);
2985 static void test_pack_PEMRGLSBOUNDEDRECORD(void)
2987 /* PEMRGLSBOUNDEDRECORD */
2988 TEST_TYPE(PEMRGLSBOUNDEDRECORD, 4, 4);
2989 TEST_TYPE_POINTER(PEMRGLSBOUNDEDRECORD, 32, 4);
2992 static void test_pack_PEMRGLSRECORD(void)
2995 TEST_TYPE(PEMRGLSRECORD, 4, 4);
2996 TEST_TYPE_POINTER(PEMRGLSRECORD, 16, 4);
2999 static void test_pack_PEMRINTERSECTCLIPRECT(void)
3001 /* PEMRINTERSECTCLIPRECT */
3002 TEST_TYPE(PEMRINTERSECTCLIPRECT, 4, 4);
3003 TEST_TYPE_POINTER(PEMRINTERSECTCLIPRECT, 24, 4);
3006 static void test_pack_PEMRINVERTRGN(void)
3009 TEST_TYPE(PEMRINVERTRGN, 4, 4);
3010 TEST_TYPE_POINTER(PEMRINVERTRGN, 32, 4);
3013 static void test_pack_PEMRLINETO(void)
3016 TEST_TYPE(PEMRLINETO, 4, 4);
3017 TEST_TYPE_POINTER(PEMRLINETO, 16, 4);
3020 static void test_pack_PEMRMASKBLT(void)
3023 TEST_TYPE(PEMRMASKBLT, 4, 4);
3024 TEST_TYPE_POINTER(PEMRMASKBLT, 128, 4);
3027 static void test_pack_PEMRMODIFYWORLDTRANSFORM(void)
3029 /* PEMRMODIFYWORLDTRANSFORM */
3030 TEST_TYPE(PEMRMODIFYWORLDTRANSFORM, 4, 4);
3031 TEST_TYPE_POINTER(PEMRMODIFYWORLDTRANSFORM, 36, 4);
3034 static void test_pack_PEMRMOVETOEX(void)
3037 TEST_TYPE(PEMRMOVETOEX, 4, 4);
3038 TEST_TYPE_POINTER(PEMRMOVETOEX, 16, 4);
3041 static void test_pack_PEMROFFSETCLIPRGN(void)
3043 /* PEMROFFSETCLIPRGN */
3044 TEST_TYPE(PEMROFFSETCLIPRGN, 4, 4);
3045 TEST_TYPE_POINTER(PEMROFFSETCLIPRGN, 16, 4);
3048 static void test_pack_PEMRPAINTRGN(void)
3051 TEST_TYPE(PEMRPAINTRGN, 4, 4);
3052 TEST_TYPE_POINTER(PEMRPAINTRGN, 32, 4);
3055 static void test_pack_PEMRPIE(void)
3058 TEST_TYPE(PEMRPIE, 4, 4);
3059 TEST_TYPE_POINTER(PEMRPIE, 40, 4);
3062 static void test_pack_PEMRPIXELFORMAT(void)
3064 /* PEMRPIXELFORMAT */
3065 TEST_TYPE(PEMRPIXELFORMAT, 4, 4);
3066 TEST_TYPE_POINTER(PEMRPIXELFORMAT, 48, 4);
3069 static void test_pack_PEMRPLGBLT(void)
3072 TEST_TYPE(PEMRPLGBLT, 4, 4);
3073 TEST_TYPE_POINTER(PEMRPLGBLT, 140, 4);
3076 static void test_pack_PEMRPOLYBEZIER(void)
3078 /* PEMRPOLYBEZIER */
3079 TEST_TYPE(PEMRPOLYBEZIER, 4, 4);
3080 TEST_TYPE_POINTER(PEMRPOLYBEZIER, 36, 4);
3083 static void test_pack_PEMRPOLYBEZIER16(void)
3085 /* PEMRPOLYBEZIER16 */
3086 TEST_TYPE(PEMRPOLYBEZIER16, 4, 4);
3087 TEST_TYPE_POINTER(PEMRPOLYBEZIER16, 32, 4);
3090 static void test_pack_PEMRPOLYBEZIERTO(void)
3092 /* PEMRPOLYBEZIERTO */
3093 TEST_TYPE(PEMRPOLYBEZIERTO, 4, 4);
3094 TEST_TYPE_POINTER(PEMRPOLYBEZIERTO, 36, 4);
3097 static void test_pack_PEMRPOLYBEZIERTO16(void)
3099 /* PEMRPOLYBEZIERTO16 */
3100 TEST_TYPE(PEMRPOLYBEZIERTO16, 4, 4);
3101 TEST_TYPE_POINTER(PEMRPOLYBEZIERTO16, 32, 4);
3104 static void test_pack_PEMRPOLYDRAW(void)
3107 TEST_TYPE(PEMRPOLYDRAW, 4, 4);
3108 TEST_TYPE_POINTER(PEMRPOLYDRAW, 40, 4);
3111 static void test_pack_PEMRPOLYDRAW16(void)
3113 /* PEMRPOLYDRAW16 */
3114 TEST_TYPE(PEMRPOLYDRAW16, 4, 4);
3115 TEST_TYPE_POINTER(PEMRPOLYDRAW16, 36, 4);
3118 static void test_pack_PEMRPOLYGON(void)
3121 TEST_TYPE(PEMRPOLYGON, 4, 4);
3122 TEST_TYPE_POINTER(PEMRPOLYGON, 36, 4);
3125 static void test_pack_PEMRPOLYGON16(void)
3128 TEST_TYPE(PEMRPOLYGON16, 4, 4);
3129 TEST_TYPE_POINTER(PEMRPOLYGON16, 32, 4);
3132 static void test_pack_PEMRPOLYLINE(void)
3135 TEST_TYPE(PEMRPOLYLINE, 4, 4);
3136 TEST_TYPE_POINTER(PEMRPOLYLINE, 36, 4);
3139 static void test_pack_PEMRPOLYLINE16(void)
3141 /* PEMRPOLYLINE16 */
3142 TEST_TYPE(PEMRPOLYLINE16, 4, 4);
3143 TEST_TYPE_POINTER(PEMRPOLYLINE16, 32, 4);
3146 static void test_pack_PEMRPOLYLINETO(void)
3148 /* PEMRPOLYLINETO */
3149 TEST_TYPE(PEMRPOLYLINETO, 4, 4);
3150 TEST_TYPE_POINTER(PEMRPOLYLINETO, 36, 4);
3153 static void test_pack_PEMRPOLYLINETO16(void)
3155 /* PEMRPOLYLINETO16 */
3156 TEST_TYPE(PEMRPOLYLINETO16, 4, 4);
3157 TEST_TYPE_POINTER(PEMRPOLYLINETO16, 32, 4);
3160 static void test_pack_PEMRPOLYPOLYGON(void)
3162 /* PEMRPOLYPOLYGON */
3163 TEST_TYPE(PEMRPOLYPOLYGON, 4, 4);
3164 TEST_TYPE_POINTER(PEMRPOLYPOLYGON, 44, 4);
3167 static void test_pack_PEMRPOLYPOLYGON16(void)
3169 /* PEMRPOLYPOLYGON16 */
3170 TEST_TYPE(PEMRPOLYPOLYGON16, 4, 4);
3171 TEST_TYPE_POINTER(PEMRPOLYPOLYGON16, 40, 4);
3174 static void test_pack_PEMRPOLYPOLYLINE(void)
3176 /* PEMRPOLYPOLYLINE */
3177 TEST_TYPE(PEMRPOLYPOLYLINE, 4, 4);
3178 TEST_TYPE_POINTER(PEMRPOLYPOLYLINE, 44, 4);
3181 static void test_pack_PEMRPOLYPOLYLINE16(void)
3183 /* PEMRPOLYPOLYLINE16 */
3184 TEST_TYPE(PEMRPOLYPOLYLINE16, 4, 4);
3185 TEST_TYPE_POINTER(PEMRPOLYPOLYLINE16, 40, 4);
3188 static void test_pack_PEMRPOLYTEXTOUTA(void)
3190 /* PEMRPOLYTEXTOUTA */
3191 TEST_TYPE(PEMRPOLYTEXTOUTA, 4, 4);
3192 TEST_TYPE_POINTER(PEMRPOLYTEXTOUTA, 80, 4);
3195 static void test_pack_PEMRPOLYTEXTOUTW(void)
3197 /* PEMRPOLYTEXTOUTW */
3198 TEST_TYPE(PEMRPOLYTEXTOUTW, 4, 4);
3199 TEST_TYPE_POINTER(PEMRPOLYTEXTOUTW, 80, 4);
3202 static void test_pack_PEMRREALIZEPALETTE(void)
3204 /* PEMRREALIZEPALETTE */
3205 TEST_TYPE(PEMRREALIZEPALETTE, 4, 4);
3206 TEST_TYPE_POINTER(PEMRREALIZEPALETTE, 8, 4);
3209 static void test_pack_PEMRRECTANGLE(void)
3212 TEST_TYPE(PEMRRECTANGLE, 4, 4);
3213 TEST_TYPE_POINTER(PEMRRECTANGLE, 24, 4);
3216 static void test_pack_PEMRRESIZEPALETTE(void)
3218 /* PEMRRESIZEPALETTE */
3219 TEST_TYPE(PEMRRESIZEPALETTE, 4, 4);
3220 TEST_TYPE_POINTER(PEMRRESIZEPALETTE, 16, 4);
3223 static void test_pack_PEMRRESTOREDC(void)
3226 TEST_TYPE(PEMRRESTOREDC, 4, 4);
3227 TEST_TYPE_POINTER(PEMRRESTOREDC, 12, 4);
3230 static void test_pack_PEMRROUNDRECT(void)
3233 TEST_TYPE(PEMRROUNDRECT, 4, 4);
3234 TEST_TYPE_POINTER(PEMRROUNDRECT, 32, 4);
3237 static void test_pack_PEMRSAVEDC(void)
3240 TEST_TYPE(PEMRSAVEDC, 4, 4);
3241 TEST_TYPE_POINTER(PEMRSAVEDC, 8, 4);
3244 static void test_pack_PEMRSCALEVIEWPORTEXTEX(void)
3246 /* PEMRSCALEVIEWPORTEXTEX */
3247 TEST_TYPE(PEMRSCALEVIEWPORTEXTEX, 4, 4);
3248 TEST_TYPE_POINTER(PEMRSCALEVIEWPORTEXTEX, 24, 4);
3251 static void test_pack_PEMRSCALEWINDOWEXTEX(void)
3253 /* PEMRSCALEWINDOWEXTEX */
3254 TEST_TYPE(PEMRSCALEWINDOWEXTEX, 4, 4);
3255 TEST_TYPE_POINTER(PEMRSCALEWINDOWEXTEX, 24, 4);
3258 static void test_pack_PEMRSELECTCLIPPATH(void)
3260 /* PEMRSELECTCLIPPATH */
3261 TEST_TYPE(PEMRSELECTCLIPPATH, 4, 4);
3262 TEST_TYPE_POINTER(PEMRSELECTCLIPPATH, 12, 4);
3265 static void test_pack_PEMRSELECTCOLORSPACE(void)
3267 /* PEMRSELECTCOLORSPACE */
3268 TEST_TYPE(PEMRSELECTCOLORSPACE, 4, 4);
3269 TEST_TYPE_POINTER(PEMRSELECTCOLORSPACE, 12, 4);
3272 static void test_pack_PEMRSELECTOBJECT(void)
3274 /* PEMRSELECTOBJECT */
3275 TEST_TYPE(PEMRSELECTOBJECT, 4, 4);
3276 TEST_TYPE_POINTER(PEMRSELECTOBJECT, 12, 4);
3279 static void test_pack_PEMRSELECTPALETTE(void)
3281 /* PEMRSELECTPALETTE */
3282 TEST_TYPE(PEMRSELECTPALETTE, 4, 4);
3283 TEST_TYPE_POINTER(PEMRSELECTPALETTE, 12, 4);
3286 static void test_pack_PEMRSETARCDIRECTION(void)
3288 /* PEMRSETARCDIRECTION */
3289 TEST_TYPE(PEMRSETARCDIRECTION, 4, 4);
3290 TEST_TYPE_POINTER(PEMRSETARCDIRECTION, 12, 4);
3293 static void test_pack_PEMRSETBKCOLOR(void)
3295 /* PEMRSETBKCOLOR */
3296 TEST_TYPE(PEMRSETBKCOLOR, 4, 4);
3297 TEST_TYPE_POINTER(PEMRSETBKCOLOR, 12, 4);
3300 static void test_pack_PEMRSETBKMODE(void)
3303 TEST_TYPE(PEMRSETBKMODE, 4, 4);
3304 TEST_TYPE_POINTER(PEMRSETBKMODE, 12, 4);
3307 static void test_pack_PEMRSETBRUSHORGEX(void)
3309 /* PEMRSETBRUSHORGEX */
3310 TEST_TYPE(PEMRSETBRUSHORGEX, 4, 4);
3311 TEST_TYPE_POINTER(PEMRSETBRUSHORGEX, 16, 4);
3314 static void test_pack_PEMRSETCOLORADJUSTMENT(void)
3316 /* PEMRSETCOLORADJUSTMENT */
3317 TEST_TYPE(PEMRSETCOLORADJUSTMENT, 4, 4);
3318 TEST_TYPE_POINTER(PEMRSETCOLORADJUSTMENT, 32, 4);
3321 static void test_pack_PEMRSETCOLORSPACE(void)
3323 /* PEMRSETCOLORSPACE */
3324 TEST_TYPE(PEMRSETCOLORSPACE, 4, 4);
3325 TEST_TYPE_POINTER(PEMRSETCOLORSPACE, 12, 4);
3328 static void test_pack_PEMRSETDIBITSTODEVICE(void)
3330 /* PEMRSETDIBITSTODEVICE */
3331 TEST_TYPE(PEMRSETDIBITSTODEVICE, 4, 4);
3332 TEST_TYPE_POINTER(PEMRSETDIBITSTODEVICE, 76, 4);
3335 static void test_pack_PEMRSETICMMODE(void)
3337 /* PEMRSETICMMODE */
3338 TEST_TYPE(PEMRSETICMMODE, 4, 4);
3339 TEST_TYPE_POINTER(PEMRSETICMMODE, 12, 4);
3342 static void test_pack_PEMRSETLAYOUT(void)
3345 TEST_TYPE(PEMRSETLAYOUT, 4, 4);
3346 TEST_TYPE_POINTER(PEMRSETLAYOUT, 12, 4);
3349 static void test_pack_PEMRSETMAPMODE(void)
3351 /* PEMRSETMAPMODE */
3352 TEST_TYPE(PEMRSETMAPMODE, 4, 4);
3353 TEST_TYPE_POINTER(PEMRSETMAPMODE, 12, 4);
3356 static void test_pack_PEMRSETMAPPERFLAGS(void)
3358 /* PEMRSETMAPPERFLAGS */
3359 TEST_TYPE(PEMRSETMAPPERFLAGS, 4, 4);
3360 TEST_TYPE_POINTER(PEMRSETMAPPERFLAGS, 12, 4);
3363 static void test_pack_PEMRSETMETARGN(void)
3365 /* PEMRSETMETARGN */
3366 TEST_TYPE(PEMRSETMETARGN, 4, 4);
3367 TEST_TYPE_POINTER(PEMRSETMETARGN, 8, 4);
3370 static void test_pack_PEMRSETMITERLIMIT(void)
3372 /* PEMRSETMITERLIMIT */
3373 TEST_TYPE(PEMRSETMITERLIMIT, 4, 4);
3374 TEST_TYPE_POINTER(PEMRSETMITERLIMIT, 12, 4);
3377 static void test_pack_PEMRSETPALETTEENTRIES(void)
3379 /* PEMRSETPALETTEENTRIES */
3380 TEST_TYPE(PEMRSETPALETTEENTRIES, 4, 4);
3381 TEST_TYPE_POINTER(PEMRSETPALETTEENTRIES, 24, 4);
3384 static void test_pack_PEMRSETPIXELV(void)
3387 TEST_TYPE(PEMRSETPIXELV, 4, 4);
3388 TEST_TYPE_POINTER(PEMRSETPIXELV, 20, 4);
3391 static void test_pack_PEMRSETPOLYFILLMODE(void)
3393 /* PEMRSETPOLYFILLMODE */
3394 TEST_TYPE(PEMRSETPOLYFILLMODE, 4, 4);
3395 TEST_TYPE_POINTER(PEMRSETPOLYFILLMODE, 12, 4);
3398 static void test_pack_PEMRSETROP2(void)
3401 TEST_TYPE(PEMRSETROP2, 4, 4);
3402 TEST_TYPE_POINTER(PEMRSETROP2, 12, 4);
3405 static void test_pack_PEMRSETSTRETCHBLTMODE(void)
3407 /* PEMRSETSTRETCHBLTMODE */
3408 TEST_TYPE(PEMRSETSTRETCHBLTMODE, 4, 4);
3409 TEST_TYPE_POINTER(PEMRSETSTRETCHBLTMODE, 12, 4);
3412 static void test_pack_PEMRSETTEXTALIGN(void)
3414 /* PEMRSETTEXTALIGN */
3415 TEST_TYPE(PEMRSETTEXTALIGN, 4, 4);
3416 TEST_TYPE_POINTER(PEMRSETTEXTALIGN, 12, 4);
3419 static void test_pack_PEMRSETTEXTCOLOR(void)
3421 /* PEMRSETTEXTCOLOR */
3422 TEST_TYPE(PEMRSETTEXTCOLOR, 4, 4);
3423 TEST_TYPE_POINTER(PEMRSETTEXTCOLOR, 12, 4);
3426 static void test_pack_PEMRSETVIEWPORTEXTEX(void)
3428 /* PEMRSETVIEWPORTEXTEX */
3429 TEST_TYPE(PEMRSETVIEWPORTEXTEX, 4, 4);
3430 TEST_TYPE_POINTER(PEMRSETVIEWPORTEXTEX, 16, 4);
3433 static void test_pack_PEMRSETVIEWPORTORGEX(void)
3435 /* PEMRSETVIEWPORTORGEX */
3436 TEST_TYPE(PEMRSETVIEWPORTORGEX, 4, 4);
3437 TEST_TYPE_POINTER(PEMRSETVIEWPORTORGEX, 16, 4);
3440 static void test_pack_PEMRSETWINDOWEXTEX(void)
3442 /* PEMRSETWINDOWEXTEX */
3443 TEST_TYPE(PEMRSETWINDOWEXTEX, 4, 4);
3444 TEST_TYPE_POINTER(PEMRSETWINDOWEXTEX, 16, 4);
3447 static void test_pack_PEMRSETWINDOWORGEX(void)
3449 /* PEMRSETWINDOWORGEX */
3450 TEST_TYPE(PEMRSETWINDOWORGEX, 4, 4);
3451 TEST_TYPE_POINTER(PEMRSETWINDOWORGEX, 16, 4);
3454 static void test_pack_PEMRSETWORLDTRANSFORM(void)
3456 /* PEMRSETWORLDTRANSFORM */
3457 TEST_TYPE(PEMRSETWORLDTRANSFORM, 4, 4);
3458 TEST_TYPE_POINTER(PEMRSETWORLDTRANSFORM, 32, 4);
3461 static void test_pack_PEMRSTRETCHBLT(void)
3463 /* PEMRSTRETCHBLT */
3464 TEST_TYPE(PEMRSTRETCHBLT, 4, 4);
3465 TEST_TYPE_POINTER(PEMRSTRETCHBLT, 108, 4);
3468 static void test_pack_PEMRSTRETCHDIBITS(void)
3470 /* PEMRSTRETCHDIBITS */
3471 TEST_TYPE(PEMRSTRETCHDIBITS, 4, 4);
3472 TEST_TYPE_POINTER(PEMRSTRETCHDIBITS, 80, 4);
3475 static void test_pack_PEMRSTROKEANDFILLPATH(void)
3477 /* PEMRSTROKEANDFILLPATH */
3478 TEST_TYPE(PEMRSTROKEANDFILLPATH, 4, 4);
3479 TEST_TYPE_POINTER(PEMRSTROKEANDFILLPATH, 24, 4);
3482 static void test_pack_PEMRSTROKEPATH(void)
3484 /* PEMRSTROKEPATH */
3485 TEST_TYPE(PEMRSTROKEPATH, 4, 4);
3486 TEST_TYPE_POINTER(PEMRSTROKEPATH, 24, 4);
3489 static void test_pack_PEMRTEXT(void)
3492 TEST_TYPE(PEMRTEXT, 4, 4);
3493 TEST_TYPE_POINTER(PEMRTEXT, 40, 4);
3496 static void test_pack_PEMRWIDENPATH(void)
3499 TEST_TYPE(PEMRWIDENPATH, 4, 4);
3500 TEST_TYPE_POINTER(PEMRWIDENPATH, 8, 4);
3503 static void test_pack_PENHMETAHEADER(void)
3505 /* PENHMETAHEADER */
3506 TEST_TYPE(PENHMETAHEADER, 4, 4);
3507 TEST_TYPE_POINTER(PENHMETAHEADER, 108, 4);
3510 static void test_pack_PEXTLOGFONTA(void)
3513 TEST_TYPE(PEXTLOGFONTA, 4, 4);
3514 TEST_TYPE_POINTER(PEXTLOGFONTA, 192, 4);
3517 static void test_pack_PEXTLOGFONTW(void)
3520 TEST_TYPE(PEXTLOGFONTW, 4, 4);
3521 TEST_TYPE_POINTER(PEXTLOGFONTW, 320, 4);
3524 static void test_pack_PEXTLOGPEN(void)
3527 TEST_TYPE(PEXTLOGPEN, 4, 4);
3528 TEST_TYPE_POINTER(PEXTLOGPEN, 28, 4);
3531 static void test_pack_PFONTSIGNATURE(void)
3533 /* PFONTSIGNATURE */
3534 TEST_TYPE(PFONTSIGNATURE, 4, 4);
3535 TEST_TYPE_POINTER(PFONTSIGNATURE, 24, 4);
3538 static void test_pack_PGLYPHMETRICSFLOAT(void)
3540 /* PGLYPHMETRICSFLOAT */
3541 TEST_TYPE(PGLYPHMETRICSFLOAT, 4, 4);
3542 TEST_TYPE_POINTER(PGLYPHMETRICSFLOAT, 24, 4);
3545 static void test_pack_PGRADIENT_RECT(void)
3547 /* PGRADIENT_RECT */
3548 TEST_TYPE(PGRADIENT_RECT, 4, 4);
3549 TEST_TYPE_POINTER(PGRADIENT_RECT, 8, 4);
3552 static void test_pack_PGRADIENT_TRIANGLE(void)
3554 /* PGRADIENT_TRIANGLE */
3555 TEST_TYPE(PGRADIENT_TRIANGLE, 4, 4);
3556 TEST_TYPE_POINTER(PGRADIENT_TRIANGLE, 12, 4);
3559 static void test_pack_PHANDLETABLE(void)
3562 TEST_TYPE(PHANDLETABLE, 4, 4);
3563 TEST_TYPE_POINTER(PHANDLETABLE, 4, 4);
3566 static void test_pack_PIXELFORMATDESCRIPTOR(void)
3568 /* PIXELFORMATDESCRIPTOR (pack 4) */
3569 TEST_TYPE(PIXELFORMATDESCRIPTOR, 40, 4);
3570 TEST_FIELD(PIXELFORMATDESCRIPTOR, WORD, nSize, 0, 2, 2);
3571 TEST_FIELD(PIXELFORMATDESCRIPTOR, WORD, nVersion, 2, 2, 2);
3572 TEST_FIELD(PIXELFORMATDESCRIPTOR, DWORD, dwFlags, 4, 4, 4);
3573 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, iPixelType, 8, 1, 1);
3574 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cColorBits, 9, 1, 1);
3575 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cRedBits, 10, 1, 1);
3576 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cRedShift, 11, 1, 1);
3577 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cGreenBits, 12, 1, 1);
3578 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cGreenShift, 13, 1, 1);
3579 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cBlueBits, 14, 1, 1);
3580 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cBlueShift, 15, 1, 1);
3581 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAlphaBits, 16, 1, 1);
3582 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAlphaShift, 17, 1, 1);
3583 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAccumBits, 18, 1, 1);
3584 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAccumRedBits, 19, 1, 1);
3585 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAccumGreenBits, 20, 1, 1);
3586 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAccumBlueBits, 21, 1, 1);
3587 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAccumAlphaBits, 22, 1, 1);
3588 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cDepthBits, 23, 1, 1);
3589 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cStencilBits, 24, 1, 1);
3590 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAuxBuffers, 25, 1, 1);
3591 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, iLayerType, 26, 1, 1);
3592 TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, bReserved, 27, 1, 1);
3593 TEST_FIELD(PIXELFORMATDESCRIPTOR, DWORD, dwLayerMask, 28, 4, 4);
3594 TEST_FIELD(PIXELFORMATDESCRIPTOR, DWORD, dwVisibleMask, 32, 4, 4);
3595 TEST_FIELD(PIXELFORMATDESCRIPTOR, DWORD, dwDamageMask, 36, 4, 4);
3598 static void test_pack_PLAYERPLANEDESCRIPTOR(void)
3600 /* PLAYERPLANEDESCRIPTOR */
3601 TEST_TYPE(PLAYERPLANEDESCRIPTOR, 4, 4);
3602 TEST_TYPE_POINTER(PLAYERPLANEDESCRIPTOR, 32, 4);
3605 static void test_pack_PLOCALESIGNATURE(void)
3607 /* PLOCALESIGNATURE */
3608 TEST_TYPE(PLOCALESIGNATURE, 4, 4);
3609 TEST_TYPE_POINTER(PLOCALESIGNATURE, 32, 4);
3612 static void test_pack_PLOGBRUSH(void)
3615 TEST_TYPE(PLOGBRUSH, 4, 4);
3616 TEST_TYPE_POINTER(PLOGBRUSH, 12, 4);
3619 static void test_pack_PLOGFONTA(void)
3622 TEST_TYPE(PLOGFONTA, 4, 4);
3623 TEST_TYPE_POINTER(PLOGFONTA, 60, 4);
3626 static void test_pack_PLOGFONTW(void)
3629 TEST_TYPE(PLOGFONTW, 4, 4);
3630 TEST_TYPE_POINTER(PLOGFONTW, 92, 4);
3633 static void test_pack_PMETAHEADER(void)
3636 TEST_TYPE(PMETAHEADER, 4, 4);
3637 TEST_TYPE_POINTER(PMETAHEADER, 18, 2);
3640 static void test_pack_PMETARECORD(void)
3643 TEST_TYPE(PMETARECORD, 4, 4);
3644 TEST_TYPE_POINTER(PMETARECORD, 8, 4);
3647 static void test_pack_PNEWTEXTMETRICA(void)
3649 /* PNEWTEXTMETRICA */
3650 TEST_TYPE(PNEWTEXTMETRICA, 4, 4);
3651 TEST_TYPE_POINTER(PNEWTEXTMETRICA, 72, 4);
3654 static void test_pack_PNEWTEXTMETRICW(void)
3656 /* PNEWTEXTMETRICW */
3657 TEST_TYPE(PNEWTEXTMETRICW, 4, 4);
3658 TEST_TYPE_POINTER(PNEWTEXTMETRICW, 76, 4);
3661 static void test_pack_POINTFLOAT(void)
3663 /* POINTFLOAT (pack 4) */
3664 TEST_TYPE(POINTFLOAT, 8, 4);
3665 TEST_FIELD(POINTFLOAT, FLOAT, x, 0, 4, 4);
3666 TEST_FIELD(POINTFLOAT, FLOAT, y, 4, 4, 4);
3669 static void test_pack_POINTFX(void)
3671 /* POINTFX (pack 4) */
3672 TEST_TYPE(POINTFX, 8, 2);
3673 TEST_FIELD(POINTFX, FIXED, x, 0, 4, 2);
3674 TEST_FIELD(POINTFX, FIXED, y, 4, 4, 2);
3677 static void test_pack_POLYTEXTA(void)
3679 /* POLYTEXTA (pack 4) */
3680 TEST_TYPE(POLYTEXTA, 40, 4);
3681 TEST_FIELD(POLYTEXTA, INT, x, 0, 4, 4);
3682 TEST_FIELD(POLYTEXTA, INT, y, 4, 4, 4);
3683 TEST_FIELD(POLYTEXTA, UINT, n, 8, 4, 4);
3684 TEST_FIELD(POLYTEXTA, LPCSTR, lpstr, 12, 4, 4);
3685 TEST_FIELD(POLYTEXTA, UINT, uiFlags, 16, 4, 4);
3686 TEST_FIELD(POLYTEXTA, RECT, rcl, 20, 16, 4);
3687 TEST_FIELD(POLYTEXTA, INT *, pdx, 36, 4, 4);
3690 static void test_pack_POLYTEXTW(void)
3692 /* POLYTEXTW (pack 4) */
3693 TEST_TYPE(POLYTEXTW, 40, 4);
3694 TEST_FIELD(POLYTEXTW, INT, x, 0, 4, 4);
3695 TEST_FIELD(POLYTEXTW, INT, y, 4, 4, 4);
3696 TEST_FIELD(POLYTEXTW, UINT, n, 8, 4, 4);
3697 TEST_FIELD(POLYTEXTW, LPCWSTR, lpstr, 12, 4, 4);
3698 TEST_FIELD(POLYTEXTW, UINT, uiFlags, 16, 4, 4);
3699 TEST_FIELD(POLYTEXTW, RECT, rcl, 20, 16, 4);
3700 TEST_FIELD(POLYTEXTW, INT *, pdx, 36, 4, 4);
3703 static void test_pack_POUTLINETEXTMETRICA(void)
3705 /* POUTLINETEXTMETRICA */
3706 TEST_TYPE(POUTLINETEXTMETRICA, 4, 4);
3707 TEST_TYPE_POINTER(POUTLINETEXTMETRICA, 212, 4);
3710 static void test_pack_POUTLINETEXTMETRICW(void)
3712 /* POUTLINETEXTMETRICW */
3713 TEST_TYPE(POUTLINETEXTMETRICW, 4, 4);
3714 TEST_TYPE_POINTER(POUTLINETEXTMETRICW, 216, 4);
3717 static void test_pack_PPELARRAY(void)
3720 TEST_TYPE(PPELARRAY, 4, 4);
3721 TEST_TYPE_POINTER(PPELARRAY, 20, 4);
3724 static void test_pack_PPIXELFORMATDESCRIPTOR(void)
3726 /* PPIXELFORMATDESCRIPTOR */
3727 TEST_TYPE(PPIXELFORMATDESCRIPTOR, 4, 4);
3728 TEST_TYPE_POINTER(PPIXELFORMATDESCRIPTOR, 40, 4);
3731 static void test_pack_PPOINTFLOAT(void)
3734 TEST_TYPE(PPOINTFLOAT, 4, 4);
3735 TEST_TYPE_POINTER(PPOINTFLOAT, 8, 4);
3738 static void test_pack_PPOLYTEXTA(void)
3741 TEST_TYPE(PPOLYTEXTA, 4, 4);
3742 TEST_TYPE_POINTER(PPOLYTEXTA, 40, 4);
3745 static void test_pack_PPOLYTEXTW(void)
3748 TEST_TYPE(PPOLYTEXTW, 4, 4);
3749 TEST_TYPE_POINTER(PPOLYTEXTW, 40, 4);
3752 static void test_pack_PRGNDATA(void)
3755 TEST_TYPE(PRGNDATA, 4, 4);
3756 TEST_TYPE_POINTER(PRGNDATA, 36, 4);
3759 static void test_pack_PRGNDATAHEADER(void)
3761 /* PRGNDATAHEADER */
3762 TEST_TYPE(PRGNDATAHEADER, 4, 4);
3763 TEST_TYPE_POINTER(PRGNDATAHEADER, 32, 4);
3766 static void test_pack_PTEXTMETRICA(void)
3769 TEST_TYPE(PTEXTMETRICA, 4, 4);
3770 TEST_TYPE_POINTER(PTEXTMETRICA, 56, 4);
3773 static void test_pack_PTEXTMETRICW(void)
3776 TEST_TYPE(PTEXTMETRICW, 4, 4);
3777 TEST_TYPE_POINTER(PTEXTMETRICW, 60, 4);
3780 static void test_pack_PTRIVERTEX(void)
3783 TEST_TYPE(PTRIVERTEX, 4, 4);
3784 TEST_TYPE_POINTER(PTRIVERTEX, 16, 4);
3787 static void test_pack_PXFORM(void)
3790 TEST_TYPE(PXFORM, 4, 4);
3791 TEST_TYPE_POINTER(PXFORM, 24, 4);
3794 static void test_pack_RASTERIZER_STATUS(void)
3796 /* RASTERIZER_STATUS (pack 4) */
3797 TEST_TYPE(RASTERIZER_STATUS, 6, 2);
3798 TEST_FIELD(RASTERIZER_STATUS, SHORT, nSize, 0, 2, 2);
3799 TEST_FIELD(RASTERIZER_STATUS, SHORT, wFlags, 2, 2, 2);
3800 TEST_FIELD(RASTERIZER_STATUS, SHORT, nLanguageID, 4, 2, 2);
3803 static void test_pack_RGBQUAD(void)
3805 /* RGBQUAD (pack 4) */
3806 TEST_TYPE(RGBQUAD, 4, 1);
3807 TEST_FIELD(RGBQUAD, BYTE, rgbBlue, 0, 1, 1);
3808 TEST_FIELD(RGBQUAD, BYTE, rgbGreen, 1, 1, 1);
3809 TEST_FIELD(RGBQUAD, BYTE, rgbRed, 2, 1, 1);
3810 TEST_FIELD(RGBQUAD, BYTE, rgbReserved, 3, 1, 1);
3813 static void test_pack_RGBTRIPLE(void)
3815 /* RGBTRIPLE (pack 4) */
3816 TEST_TYPE(RGBTRIPLE, 3, 1);
3817 TEST_FIELD(RGBTRIPLE, BYTE, rgbtBlue, 0, 1, 1);
3818 TEST_FIELD(RGBTRIPLE, BYTE, rgbtGreen, 1, 1, 1);
3819 TEST_FIELD(RGBTRIPLE, BYTE, rgbtRed, 2, 1, 1);
3822 static void test_pack_RGNDATA(void)
3824 /* RGNDATA (pack 4) */
3825 TEST_TYPE(RGNDATA, 36, 4);
3826 TEST_FIELD(RGNDATA, RGNDATAHEADER, rdh, 0, 32, 4);
3827 TEST_FIELD(RGNDATA, char[1], Buffer, 32, 1, 1);
3830 static void test_pack_RGNDATAHEADER(void)
3832 /* RGNDATAHEADER (pack 4) */
3833 TEST_TYPE(RGNDATAHEADER, 32, 4);
3834 TEST_FIELD(RGNDATAHEADER, DWORD, dwSize, 0, 4, 4);
3835 TEST_FIELD(RGNDATAHEADER, DWORD, iType, 4, 4, 4);
3836 TEST_FIELD(RGNDATAHEADER, DWORD, nCount, 8, 4, 4);
3837 TEST_FIELD(RGNDATAHEADER, DWORD, nRgnSize, 12, 4, 4);
3838 TEST_FIELD(RGNDATAHEADER, RECT, rcBound, 16, 16, 4);
3841 static void test_pack_TEXTMETRICA(void)
3843 /* TEXTMETRICA (pack 4) */
3844 TEST_TYPE(TEXTMETRICA, 56, 4);
3845 TEST_FIELD(TEXTMETRICA, LONG, tmHeight, 0, 4, 4);
3846 TEST_FIELD(TEXTMETRICA, LONG, tmAscent, 4, 4, 4);
3847 TEST_FIELD(TEXTMETRICA, LONG, tmDescent, 8, 4, 4);
3848 TEST_FIELD(TEXTMETRICA, LONG, tmInternalLeading, 12, 4, 4);
3849 TEST_FIELD(TEXTMETRICA, LONG, tmExternalLeading, 16, 4, 4);
3850 TEST_FIELD(TEXTMETRICA, LONG, tmAveCharWidth, 20, 4, 4);
3851 TEST_FIELD(TEXTMETRICA, LONG, tmMaxCharWidth, 24, 4, 4);
3852 TEST_FIELD(TEXTMETRICA, LONG, tmWeight, 28, 4, 4);
3853 TEST_FIELD(TEXTMETRICA, LONG, tmOverhang, 32, 4, 4);
3854 TEST_FIELD(TEXTMETRICA, LONG, tmDigitizedAspectX, 36, 4, 4);
3855 TEST_FIELD(TEXTMETRICA, LONG, tmDigitizedAspectY, 40, 4, 4);
3856 TEST_FIELD(TEXTMETRICA, BYTE, tmFirstChar, 44, 1, 1);
3857 TEST_FIELD(TEXTMETRICA, BYTE, tmLastChar, 45, 1, 1);
3858 TEST_FIELD(TEXTMETRICA, BYTE, tmDefaultChar, 46, 1, 1);
3859 TEST_FIELD(TEXTMETRICA, BYTE, tmBreakChar, 47, 1, 1);
3860 TEST_FIELD(TEXTMETRICA, BYTE, tmItalic, 48, 1, 1);
3861 TEST_FIELD(TEXTMETRICA, BYTE, tmUnderlined, 49, 1, 1);
3862 TEST_FIELD(TEXTMETRICA, BYTE, tmStruckOut, 50, 1, 1);
3863 TEST_FIELD(TEXTMETRICA, BYTE, tmPitchAndFamily, 51, 1, 1);
3864 TEST_FIELD(TEXTMETRICA, BYTE, tmCharSet, 52, 1, 1);
3867 static void test_pack_TEXTMETRICW(void)
3869 /* TEXTMETRICW (pack 4) */
3870 TEST_TYPE(TEXTMETRICW, 60, 4);
3871 TEST_FIELD(TEXTMETRICW, LONG, tmHeight, 0, 4, 4);
3872 TEST_FIELD(TEXTMETRICW, LONG, tmAscent, 4, 4, 4);
3873 TEST_FIELD(TEXTMETRICW, LONG, tmDescent, 8, 4, 4);
3874 TEST_FIELD(TEXTMETRICW, LONG, tmInternalLeading, 12, 4, 4);
3875 TEST_FIELD(TEXTMETRICW, LONG, tmExternalLeading, 16, 4, 4);
3876 TEST_FIELD(TEXTMETRICW, LONG, tmAveCharWidth, 20, 4, 4);
3877 TEST_FIELD(TEXTMETRICW, LONG, tmMaxCharWidth, 24, 4, 4);
3878 TEST_FIELD(TEXTMETRICW, LONG, tmWeight, 28, 4, 4);
3879 TEST_FIELD(TEXTMETRICW, LONG, tmOverhang, 32, 4, 4);
3880 TEST_FIELD(TEXTMETRICW, LONG, tmDigitizedAspectX, 36, 4, 4);
3881 TEST_FIELD(TEXTMETRICW, LONG, tmDigitizedAspectY, 40, 4, 4);
3882 TEST_FIELD(TEXTMETRICW, WCHAR, tmFirstChar, 44, 2, 2);
3883 TEST_FIELD(TEXTMETRICW, WCHAR, tmLastChar, 46, 2, 2);
3884 TEST_FIELD(TEXTMETRICW, WCHAR, tmDefaultChar, 48, 2, 2);
3885 TEST_FIELD(TEXTMETRICW, WCHAR, tmBreakChar, 50, 2, 2);
3886 TEST_FIELD(TEXTMETRICW, BYTE, tmItalic, 52, 1, 1);
3887 TEST_FIELD(TEXTMETRICW, BYTE, tmUnderlined, 53, 1, 1);
3888 TEST_FIELD(TEXTMETRICW, BYTE, tmStruckOut, 54, 1, 1);
3889 TEST_FIELD(TEXTMETRICW, BYTE, tmPitchAndFamily, 55, 1, 1);
3890 TEST_FIELD(TEXTMETRICW, BYTE, tmCharSet, 56, 1, 1);
3893 static void test_pack_TRIVERTEX(void)
3895 /* TRIVERTEX (pack 4) */
3896 TEST_TYPE(TRIVERTEX, 16, 4);
3897 TEST_FIELD(TRIVERTEX, LONG, x, 0, 4, 4);
3898 TEST_FIELD(TRIVERTEX, LONG, y, 4, 4, 4);
3899 TEST_FIELD(TRIVERTEX, COLOR16, Red, 8, 2, 2);
3900 TEST_FIELD(TRIVERTEX, COLOR16, Green, 10, 2, 2);
3901 TEST_FIELD(TRIVERTEX, COLOR16, Blue, 12, 2, 2);
3902 TEST_FIELD(TRIVERTEX, COLOR16, Alpha, 14, 2, 2);
3905 static void test_pack_TTPOLYCURVE(void)
3907 /* TTPOLYCURVE (pack 4) */
3908 TEST_TYPE(TTPOLYCURVE, 12, 2);
3909 TEST_FIELD(TTPOLYCURVE, WORD, wType, 0, 2, 2);
3910 TEST_FIELD(TTPOLYCURVE, WORD, cpfx, 2, 2, 2);
3911 TEST_FIELD(TTPOLYCURVE, POINTFX[1], apfx, 4, 8, 2);
3914 static void test_pack_TTPOLYGONHEADER(void)
3916 /* TTPOLYGONHEADER (pack 4) */
3917 TEST_TYPE(TTPOLYGONHEADER, 16, 4);
3918 TEST_FIELD(TTPOLYGONHEADER, DWORD, cb, 0, 4, 4);
3919 TEST_FIELD(TTPOLYGONHEADER, DWORD, dwType, 4, 4, 4);
3920 TEST_FIELD(TTPOLYGONHEADER, POINTFX, pfxStart, 8, 8, 2);
3923 static void test_pack_XFORM(void)
3925 /* XFORM (pack 4) */
3926 TEST_TYPE(XFORM, 24, 4);
3927 TEST_FIELD(XFORM, FLOAT, eM11, 0, 4, 4);
3928 TEST_FIELD(XFORM, FLOAT, eM12, 4, 4, 4);
3929 TEST_FIELD(XFORM, FLOAT, eM21, 8, 4, 4);
3930 TEST_FIELD(XFORM, FLOAT, eM22, 12, 4, 4);
3931 TEST_FIELD(XFORM, FLOAT, eDx, 16, 4, 4);
3932 TEST_FIELD(XFORM, FLOAT, eDy, 20, 4, 4);
3935 static void test_pack(void)
3938 test_pack_ABCFLOAT();
3939 test_pack_ABORTPROC();
3941 test_pack_BITMAPCOREHEADER();
3942 test_pack_BITMAPCOREINFO();
3943 test_pack_BITMAPFILEHEADER();
3944 test_pack_BITMAPINFO();
3945 test_pack_BITMAPINFOHEADER();
3946 test_pack_BITMAPV4HEADER();
3947 test_pack_BITMAPV5HEADER();
3948 test_pack_BLENDFUNCTION();
3949 test_pack_CHARSETINFO();
3951 test_pack_CIEXYZTRIPLE();
3952 test_pack_COLOR16();
3953 test_pack_COLORADJUSTMENT();
3954 test_pack_DEVMODEA();
3955 test_pack_DEVMODEW();
3956 test_pack_DIBSECTION();
3957 test_pack_DISPLAY_DEVICEA();
3958 test_pack_DISPLAY_DEVICEW();
3959 test_pack_DOCINFOA();
3960 test_pack_DOCINFOW();
3962 test_pack_EMRABORTPATH();
3963 test_pack_EMRANGLEARC();
3965 test_pack_EMRARCTO();
3966 test_pack_EMRBEGINPATH();
3967 test_pack_EMRBITBLT();
3968 test_pack_EMRCHORD();
3969 test_pack_EMRCLOSEFIGURE();
3970 test_pack_EMRCREATEBRUSHINDIRECT();
3971 test_pack_EMRCREATECOLORSPACE();
3972 test_pack_EMRCREATECOLORSPACEW();
3973 test_pack_EMRCREATEDIBPATTERNBRUSHPT();
3974 test_pack_EMRCREATEMONOBRUSH();
3975 test_pack_EMRCREATEPEN();
3976 test_pack_EMRDELETECOLORSPACE();
3977 test_pack_EMRDELETEOBJECT();
3978 test_pack_EMRELLIPSE();
3979 test_pack_EMRENDPATH();
3981 test_pack_EMREXCLUDECLIPRECT();
3982 test_pack_EMREXTCREATEFONTINDIRECTW();
3983 test_pack_EMREXTCREATEPEN();
3984 test_pack_EMREXTFLOODFILL();
3985 test_pack_EMREXTSELECTCLIPRGN();
3986 test_pack_EMREXTTEXTOUTA();
3987 test_pack_EMREXTTEXTOUTW();
3988 test_pack_EMRFILLPATH();
3989 test_pack_EMRFILLRGN();
3990 test_pack_EMRFLATTENPATH();
3991 test_pack_EMRFORMAT();
3992 test_pack_EMRFRAMERGN();
3993 test_pack_EMRGDICOMMENT();
3994 test_pack_EMRGLSBOUNDEDRECORD();
3995 test_pack_EMRGLSRECORD();
3996 test_pack_EMRINTERSECTCLIPRECT();
3997 test_pack_EMRINVERTRGN();
3998 test_pack_EMRLINETO();
3999 test_pack_EMRMASKBLT();
4000 test_pack_EMRMODIFYWORLDTRANSFORM();
4001 test_pack_EMRMOVETOEX();
4002 test_pack_EMROFFSETCLIPRGN();
4003 test_pack_EMRPAINTRGN();
4005 test_pack_EMRPIXELFORMAT();
4006 test_pack_EMRPLGBLT();
4007 test_pack_EMRPOLYBEZIER();
4008 test_pack_EMRPOLYBEZIER16();
4009 test_pack_EMRPOLYBEZIERTO();
4010 test_pack_EMRPOLYBEZIERTO16();
4011 test_pack_EMRPOLYDRAW();
4012 test_pack_EMRPOLYDRAW16();
4013 test_pack_EMRPOLYGON();
4014 test_pack_EMRPOLYGON16();
4015 test_pack_EMRPOLYLINE();
4016 test_pack_EMRPOLYLINE16();
4017 test_pack_EMRPOLYLINETO();
4018 test_pack_EMRPOLYLINETO16();
4019 test_pack_EMRPOLYPOLYGON();
4020 test_pack_EMRPOLYPOLYGON16();
4021 test_pack_EMRPOLYPOLYLINE();
4022 test_pack_EMRPOLYPOLYLINE16();
4023 test_pack_EMRPOLYTEXTOUTA();
4024 test_pack_EMRPOLYTEXTOUTW();
4025 test_pack_EMRREALIZEPALETTE();
4026 test_pack_EMRRECTANGLE();
4027 test_pack_EMRRESIZEPALETTE();
4028 test_pack_EMRRESTOREDC();
4029 test_pack_EMRROUNDRECT();
4030 test_pack_EMRSAVEDC();
4031 test_pack_EMRSCALEVIEWPORTEXTEX();
4032 test_pack_EMRSCALEWINDOWEXTEX();
4033 test_pack_EMRSELECTCLIPPATH();
4034 test_pack_EMRSELECTCOLORSPACE();
4035 test_pack_EMRSELECTOBJECT();
4036 test_pack_EMRSELECTPALETTE();
4037 test_pack_EMRSETARCDIRECTION();
4038 test_pack_EMRSETBKCOLOR();
4039 test_pack_EMRSETBKMODE();
4040 test_pack_EMRSETBRUSHORGEX();
4041 test_pack_EMRSETCOLORADJUSTMENT();
4042 test_pack_EMRSETCOLORSPACE();
4043 test_pack_EMRSETDIBITSTODEVICE();
4044 test_pack_EMRSETICMMODE();
4045 test_pack_EMRSETLAYOUT();
4046 test_pack_EMRSETMAPMODE();
4047 test_pack_EMRSETMAPPERFLAGS();
4048 test_pack_EMRSETMETARGN();
4049 test_pack_EMRSETMITERLIMIT();
4050 test_pack_EMRSETPIXELV();
4051 test_pack_EMRSETPOLYFILLMODE();
4052 test_pack_EMRSETROP2();
4053 test_pack_EMRSETSTRETCHBLTMODE();
4054 test_pack_EMRSETTEXTALIGN();
4055 test_pack_EMRSETTEXTCOLOR();
4056 test_pack_EMRSETVIEWPORTEXTEX();
4057 test_pack_EMRSETVIEWPORTORGEX();
4058 test_pack_EMRSETWINDOWEXTEX();
4059 test_pack_EMRSETWINDOWORGEX();
4060 test_pack_EMRSETWORLDTRANSFORM();
4061 test_pack_EMRSTRETCHBLT();
4062 test_pack_EMRSTRETCHDIBITS();
4063 test_pack_EMRSTROKEANDFILLPATH();
4064 test_pack_EMRSTROKEPATH();
4065 test_pack_EMRTEXT();
4066 test_pack_EMRWIDENPATH();
4067 test_pack_ENHMETAHEADER();
4068 test_pack_ENHMETARECORD();
4069 test_pack_ENHMFENUMPROC();
4070 test_pack_ENUMLOGFONTA();
4071 test_pack_ENUMLOGFONTEXA();
4072 test_pack_ENUMLOGFONTEXW();
4073 test_pack_ENUMLOGFONTW();
4074 test_pack_EXTLOGFONTA();
4075 test_pack_EXTLOGFONTW();
4076 test_pack_EXTLOGPEN();
4078 test_pack_FONTENUMPROCA();
4079 test_pack_FONTENUMPROCW();
4080 test_pack_FONTSIGNATURE();
4081 test_pack_FXPT16DOT16();
4082 test_pack_FXPT2DOT30();
4083 test_pack_GCP_RESULTSA();
4084 test_pack_GCP_RESULTSW();
4085 test_pack_GLYPHMETRICS();
4086 test_pack_GLYPHMETRICSFLOAT();
4087 test_pack_GOBJENUMPROC();
4088 test_pack_GRADIENT_RECT();
4089 test_pack_GRADIENT_TRIANGLE();
4090 test_pack_HANDLETABLE();
4091 test_pack_ICMENUMPROCA();
4092 test_pack_ICMENUMPROCW();
4093 test_pack_KERNINGPAIR();
4094 test_pack_LAYERPLANEDESCRIPTOR();
4095 test_pack_LCSCSTYPE();
4096 test_pack_LCSGAMUTMATCH();
4097 test_pack_LINEDDAPROC();
4098 test_pack_LOCALESIGNATURE();
4099 test_pack_LOGBRUSH();
4100 test_pack_LOGCOLORSPACEA();
4101 test_pack_LOGCOLORSPACEW();
4102 test_pack_LOGFONTA();
4103 test_pack_LOGFONTW();
4106 test_pack_LPABCFLOAT();
4107 test_pack_LPBITMAP();
4108 test_pack_LPBITMAPCOREHEADER();
4109 test_pack_LPBITMAPCOREINFO();
4110 test_pack_LPBITMAPFILEHEADER();
4111 test_pack_LPBITMAPINFO();
4112 test_pack_LPBITMAPINFOHEADER();
4113 test_pack_LPBITMAPV5HEADER();
4114 test_pack_LPCHARSETINFO();
4115 test_pack_LPCIEXYZ();
4116 test_pack_LPCIEXYZTRIPLE();
4117 test_pack_LPCOLORADJUSTMENT();
4118 test_pack_LPDEVMODEA();
4119 test_pack_LPDEVMODEW();
4120 test_pack_LPDIBSECTION();
4121 test_pack_LPDISPLAY_DEVICEA();
4122 test_pack_LPDISPLAY_DEVICEW();
4123 test_pack_LPDOCINFOA();
4124 test_pack_LPDOCINFOW();
4125 test_pack_LPENHMETAHEADER();
4126 test_pack_LPENHMETARECORD();
4127 test_pack_LPENUMLOGFONTA();
4128 test_pack_LPENUMLOGFONTEXA();
4129 test_pack_LPENUMLOGFONTEXW();
4130 test_pack_LPENUMLOGFONTW();
4131 test_pack_LPEXTLOGFONTA();
4132 test_pack_LPEXTLOGFONTW();
4133 test_pack_LPEXTLOGPEN();
4134 test_pack_LPFONTSIGNATURE();
4135 test_pack_LPGCP_RESULTSA();
4136 test_pack_LPGCP_RESULTSW();
4137 test_pack_LPGLYPHMETRICS();
4138 test_pack_LPGLYPHMETRICSFLOAT();
4139 test_pack_LPGRADIENT_RECT();
4140 test_pack_LPGRADIENT_TRIANGLE();
4141 test_pack_LPHANDLETABLE();
4142 test_pack_LPKERNINGPAIR();
4143 test_pack_LPLAYERPLANEDESCRIPTOR();
4144 test_pack_LPLOCALESIGNATURE();
4145 test_pack_LPLOGBRUSH();
4146 test_pack_LPLOGCOLORSPACEA();
4147 test_pack_LPLOGCOLORSPACEW();
4148 test_pack_LPLOGFONTA();
4149 test_pack_LPLOGFONTW();
4150 test_pack_LPLOGPEN();
4152 test_pack_LPMETAFILEPICT();
4153 test_pack_LPMETAHEADER();
4154 test_pack_LPMETARECORD();
4155 test_pack_LPNEWTEXTMETRICA();
4156 test_pack_LPNEWTEXTMETRICW();
4157 test_pack_LPOUTLINETEXTMETRICA();
4158 test_pack_LPOUTLINETEXTMETRICW();
4159 test_pack_LPPANOSE();
4160 test_pack_LPPELARRAY();
4161 test_pack_LPPIXELFORMATDESCRIPTOR();
4162 test_pack_LPPOINTFX();
4163 test_pack_LPPOLYTEXTA();
4164 test_pack_LPPOLYTEXTW();
4165 test_pack_LPRASTERIZER_STATUS();
4166 test_pack_LPRGBQUAD();
4167 test_pack_LPRGNDATA();
4168 test_pack_LPTEXTMETRICA();
4169 test_pack_LPTEXTMETRICW();
4170 test_pack_LPTRIVERTEX();
4171 test_pack_LPTTPOLYCURVE();
4172 test_pack_LPTTPOLYGONHEADER();
4173 test_pack_LPXFORM();
4175 test_pack_METAFILEPICT();
4176 test_pack_METAHEADER();
4177 test_pack_METARECORD();
4178 test_pack_MFENUMPROC();
4179 test_pack_NEWTEXTMETRICA();
4180 test_pack_NEWTEXTMETRICEXA();
4181 test_pack_NEWTEXTMETRICEXW();
4182 test_pack_NEWTEXTMETRICW();
4183 test_pack_NPEXTLOGPEN();
4184 test_pack_OLDFONTENUMPROC();
4185 test_pack_OLDFONTENUMPROCA();
4186 test_pack_OLDFONTENUMPROCW();
4187 test_pack_OUTLINETEXTMETRICA();
4188 test_pack_OUTLINETEXTMETRICW();
4190 test_pack_PABCFLOAT();
4192 test_pack_PATTERN();
4193 test_pack_PBITMAP();
4194 test_pack_PBITMAPCOREHEADER();
4195 test_pack_PBITMAPCOREINFO();
4196 test_pack_PBITMAPFILEHEADER();
4197 test_pack_PBITMAPINFO();
4198 test_pack_PBITMAPINFOHEADER();
4199 test_pack_PBITMAPV4HEADER();
4200 test_pack_PBITMAPV5HEADER();
4201 test_pack_PBLENDFUNCTION();
4202 test_pack_PCHARSETINFO();
4203 test_pack_PCOLORADJUSTMENT();
4204 test_pack_PDEVMODEA();
4205 test_pack_PDEVMODEW();
4206 test_pack_PDIBSECTION();
4207 test_pack_PDISPLAY_DEVICEA();
4208 test_pack_PDISPLAY_DEVICEW();
4209 test_pack_PELARRAY();
4211 test_pack_PEMRABORTPATH();
4212 test_pack_PEMRANGLEARC();
4213 test_pack_PEMRARC();
4214 test_pack_PEMRARCTO();
4215 test_pack_PEMRBEGINPATH();
4216 test_pack_PEMRBITBLT();
4217 test_pack_PEMRCHORD();
4218 test_pack_PEMRCLOSEFIGURE();
4219 test_pack_PEMRCREATEBRUSHINDIRECT();
4220 test_pack_PEMRCREATECOLORSPACE();
4221 test_pack_PEMRCREATECOLORSPACEW();
4222 test_pack_PEMRCREATEDIBPATTERNBRUSHPT();
4223 test_pack_PEMRCREATEMONOBRUSH();
4224 test_pack_PEMRCREATEPALETTE();
4225 test_pack_PEMRCREATEPEN();
4226 test_pack_PEMRDELETECOLORSPACE();
4227 test_pack_PEMRDELETEOBJECT();
4228 test_pack_PEMRELLIPSE();
4229 test_pack_PEMRENDPATH();
4230 test_pack_PEMREOF();
4231 test_pack_PEMREXCLUDECLIPRECT();
4232 test_pack_PEMREXTCREATEFONTINDIRECTW();
4233 test_pack_PEMREXTCREATEPEN();
4234 test_pack_PEMREXTFLOODFILL();
4235 test_pack_PEMREXTSELECTCLIPRGN();
4236 test_pack_PEMREXTTEXTOUTA();
4237 test_pack_PEMREXTTEXTOUTW();
4238 test_pack_PEMRFILLPATH();
4239 test_pack_PEMRFILLRGN();
4240 test_pack_PEMRFLATTENPATH();
4241 test_pack_PEMRFORMAT();
4242 test_pack_PEMRFRAMERGN();
4243 test_pack_PEMRGDICOMMENT();
4244 test_pack_PEMRGLSBOUNDEDRECORD();
4245 test_pack_PEMRGLSRECORD();
4246 test_pack_PEMRINTERSECTCLIPRECT();
4247 test_pack_PEMRINVERTRGN();
4248 test_pack_PEMRLINETO();
4249 test_pack_PEMRMASKBLT();
4250 test_pack_PEMRMODIFYWORLDTRANSFORM();
4251 test_pack_PEMRMOVETOEX();
4252 test_pack_PEMROFFSETCLIPRGN();
4253 test_pack_PEMRPAINTRGN();
4254 test_pack_PEMRPIE();
4255 test_pack_PEMRPIXELFORMAT();
4256 test_pack_PEMRPLGBLT();
4257 test_pack_PEMRPOLYBEZIER();
4258 test_pack_PEMRPOLYBEZIER16();
4259 test_pack_PEMRPOLYBEZIERTO();
4260 test_pack_PEMRPOLYBEZIERTO16();
4261 test_pack_PEMRPOLYDRAW();
4262 test_pack_PEMRPOLYDRAW16();
4263 test_pack_PEMRPOLYGON();
4264 test_pack_PEMRPOLYGON16();
4265 test_pack_PEMRPOLYLINE();
4266 test_pack_PEMRPOLYLINE16();
4267 test_pack_PEMRPOLYLINETO();
4268 test_pack_PEMRPOLYLINETO16();
4269 test_pack_PEMRPOLYPOLYGON();
4270 test_pack_PEMRPOLYPOLYGON16();
4271 test_pack_PEMRPOLYPOLYLINE();
4272 test_pack_PEMRPOLYPOLYLINE16();
4273 test_pack_PEMRPOLYTEXTOUTA();
4274 test_pack_PEMRPOLYTEXTOUTW();
4275 test_pack_PEMRREALIZEPALETTE();
4276 test_pack_PEMRRECTANGLE();
4277 test_pack_PEMRRESIZEPALETTE();
4278 test_pack_PEMRRESTOREDC();
4279 test_pack_PEMRROUNDRECT();
4280 test_pack_PEMRSAVEDC();
4281 test_pack_PEMRSCALEVIEWPORTEXTEX();
4282 test_pack_PEMRSCALEWINDOWEXTEX();
4283 test_pack_PEMRSELECTCLIPPATH();
4284 test_pack_PEMRSELECTCOLORSPACE();
4285 test_pack_PEMRSELECTOBJECT();
4286 test_pack_PEMRSELECTPALETTE();
4287 test_pack_PEMRSETARCDIRECTION();
4288 test_pack_PEMRSETBKCOLOR();
4289 test_pack_PEMRSETBKMODE();
4290 test_pack_PEMRSETBRUSHORGEX();
4291 test_pack_PEMRSETCOLORADJUSTMENT();
4292 test_pack_PEMRSETCOLORSPACE();
4293 test_pack_PEMRSETDIBITSTODEVICE();
4294 test_pack_PEMRSETICMMODE();
4295 test_pack_PEMRSETLAYOUT();
4296 test_pack_PEMRSETMAPMODE();
4297 test_pack_PEMRSETMAPPERFLAGS();
4298 test_pack_PEMRSETMETARGN();
4299 test_pack_PEMRSETMITERLIMIT();
4300 test_pack_PEMRSETPALETTEENTRIES();
4301 test_pack_PEMRSETPIXELV();
4302 test_pack_PEMRSETPOLYFILLMODE();
4303 test_pack_PEMRSETROP2();
4304 test_pack_PEMRSETSTRETCHBLTMODE();
4305 test_pack_PEMRSETTEXTALIGN();
4306 test_pack_PEMRSETTEXTCOLOR();
4307 test_pack_PEMRSETVIEWPORTEXTEX();
4308 test_pack_PEMRSETVIEWPORTORGEX();
4309 test_pack_PEMRSETWINDOWEXTEX();
4310 test_pack_PEMRSETWINDOWORGEX();
4311 test_pack_PEMRSETWORLDTRANSFORM();
4312 test_pack_PEMRSTRETCHBLT();
4313 test_pack_PEMRSTRETCHDIBITS();
4314 test_pack_PEMRSTROKEANDFILLPATH();
4315 test_pack_PEMRSTROKEPATH();
4316 test_pack_PEMRTEXT();
4317 test_pack_PEMRWIDENPATH();
4318 test_pack_PENHMETAHEADER();
4319 test_pack_PEXTLOGFONTA();
4320 test_pack_PEXTLOGFONTW();
4321 test_pack_PEXTLOGPEN();
4322 test_pack_PFONTSIGNATURE();
4323 test_pack_PGLYPHMETRICSFLOAT();
4324 test_pack_PGRADIENT_RECT();
4325 test_pack_PGRADIENT_TRIANGLE();
4326 test_pack_PHANDLETABLE();
4327 test_pack_PIXELFORMATDESCRIPTOR();
4328 test_pack_PLAYERPLANEDESCRIPTOR();
4329 test_pack_PLOCALESIGNATURE();
4330 test_pack_PLOGBRUSH();
4331 test_pack_PLOGFONTA();
4332 test_pack_PLOGFONTW();
4333 test_pack_PMETAHEADER();
4334 test_pack_PMETARECORD();
4335 test_pack_PNEWTEXTMETRICA();
4336 test_pack_PNEWTEXTMETRICW();
4337 test_pack_POINTFLOAT();
4338 test_pack_POINTFX();
4339 test_pack_POLYTEXTA();
4340 test_pack_POLYTEXTW();
4341 test_pack_POUTLINETEXTMETRICA();
4342 test_pack_POUTLINETEXTMETRICW();
4343 test_pack_PPELARRAY();
4344 test_pack_PPIXELFORMATDESCRIPTOR();
4345 test_pack_PPOINTFLOAT();
4346 test_pack_PPOLYTEXTA();
4347 test_pack_PPOLYTEXTW();
4348 test_pack_PRGNDATA();
4349 test_pack_PRGNDATAHEADER();
4350 test_pack_PTEXTMETRICA();
4351 test_pack_PTEXTMETRICW();
4352 test_pack_PTRIVERTEX();
4354 test_pack_RASTERIZER_STATUS();
4355 test_pack_RGBQUAD();
4356 test_pack_RGBTRIPLE();
4357 test_pack_RGNDATA();
4358 test_pack_RGNDATAHEADER();
4359 test_pack_TEXTMETRICA();
4360 test_pack_TEXTMETRICW();
4361 test_pack_TRIVERTEX();
4362 test_pack_TTPOLYCURVE();
4363 test_pack_TTPOLYGONHEADER();
4367 START_TEST(generated)