1507be9843e321682866d96ec0e6f1ed1842d8dc
[reactos.git] / modules / rostests / winetests / gdi32 / generated.c
1 /* File generated automatically from tools/winapi/tests.dat; do not edit! */
2 /* This file can be copied, modified and distributed without restriction. */
3
4 /*
5 * Unit tests for data structure packing
6 */
7
8 #include "precomp.h"
9
10 /***********************************************************************
11 * Compatibility macros
12 */
13
14 #define DWORD_PTR UINT_PTR
15 #define LONG_PTR INT_PTR
16 #define ULONG_PTR UINT_PTR
17
18 /***********************************************************************
19 * Windows API extension
20 */
21
22 #if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
23 # define _TYPE_ALIGNMENT(type) __alignof(type)
24 #elif defined(__GNUC__)
25 # define _TYPE_ALIGNMENT(type) __alignof__(type)
26 #else
27 /*
28 * FIXME: May not be possible without a compiler extension
29 * (if type is not just a name that is, otherwise the normal
30 * TYPE_ALIGNMENT can be used)
31 */
32 #endif
33
34 #if defined(TYPE_ALIGNMENT) && defined(_MSC_VER) && _MSC_VER >= 800 && !defined(__cplusplus)
35 #pragma warning(disable:4116)
36 #endif
37
38 #if !defined(TYPE_ALIGNMENT) && defined(_TYPE_ALIGNMENT)
39 # define TYPE_ALIGNMENT _TYPE_ALIGNMENT
40 #endif
41
42 /***********************************************************************
43 * Test helper macros
44 */
45
46 #define TEST_TYPE_SIZE(type, size) C_ASSERT(sizeof(type) == size);
47
48 #ifdef TYPE_ALIGNMENT
49 # define TEST_TYPE_ALIGN(type, align) C_ASSERT(TYPE_ALIGNMENT(type) == align);
50 #else
51 # define TEST_TYPE_ALIGN(type, align)
52 #endif
53
54 #ifdef _TYPE_ALIGNMENT
55 # define TEST_TARGET_ALIGN(type, align) C_ASSERT(_TYPE_ALIGNMENT(*(type)0) == align);
56 # define TEST_FIELD_ALIGN(type, field, align) C_ASSERT(_TYPE_ALIGNMENT(((type*)0)->field) == align);
57 #else
58 # define TEST_TARGET_ALIGN(type, align)
59 # define TEST_FIELD_ALIGN(type, field, align)
60 #endif
61
62 #define TEST_FIELD_OFFSET(type, field, offset) C_ASSERT(FIELD_OFFSET(type, field) == offset);
63
64 #define TEST_TARGET_SIZE(type, size) TEST_TYPE_SIZE(*(type)0, size)
65 #define TEST_FIELD_SIZE(type, field, size) TEST_TYPE_SIZE((((type*)0)->field), size)
66 #define TEST_TYPE_SIGNED(type) C_ASSERT((type) -1 < 0);
67 #define TEST_TYPE_UNSIGNED(type) C_ASSERT((type) -1 > 0);
68
69
70 #ifdef _WIN64
71
72 static void test_pack_ABC(void)
73 {
74 /* ABC */
75 TEST_TYPE_SIZE (ABC, 12)
76 TEST_TYPE_ALIGN (ABC, 4)
77 TEST_FIELD_SIZE (ABC, abcA, 4)
78 TEST_FIELD_ALIGN (ABC, abcA, 4)
79 TEST_FIELD_OFFSET(ABC, abcA, 0)
80 TEST_FIELD_SIZE (ABC, abcB, 4)
81 TEST_FIELD_ALIGN (ABC, abcB, 4)
82 TEST_FIELD_OFFSET(ABC, abcB, 4)
83 TEST_FIELD_SIZE (ABC, abcC, 4)
84 TEST_FIELD_ALIGN (ABC, abcC, 4)
85 TEST_FIELD_OFFSET(ABC, abcC, 8)
86 }
87
88 static void test_pack_ABCFLOAT(void)
89 {
90 /* ABCFLOAT */
91 TEST_TYPE_SIZE (ABCFLOAT, 12)
92 TEST_TYPE_ALIGN (ABCFLOAT, 4)
93 TEST_FIELD_SIZE (ABCFLOAT, abcfA, 4)
94 TEST_FIELD_ALIGN (ABCFLOAT, abcfA, 4)
95 TEST_FIELD_OFFSET(ABCFLOAT, abcfA, 0)
96 TEST_FIELD_SIZE (ABCFLOAT, abcfB, 4)
97 TEST_FIELD_ALIGN (ABCFLOAT, abcfB, 4)
98 TEST_FIELD_OFFSET(ABCFLOAT, abcfB, 4)
99 TEST_FIELD_SIZE (ABCFLOAT, abcfC, 4)
100 TEST_FIELD_ALIGN (ABCFLOAT, abcfC, 4)
101 TEST_FIELD_OFFSET(ABCFLOAT, abcfC, 8)
102 }
103
104 static void test_pack_ABORTPROC(void)
105 {
106 /* ABORTPROC */
107 TEST_TYPE_SIZE (ABORTPROC, 8)
108 TEST_TYPE_ALIGN (ABORTPROC, 8)
109 }
110
111 static void test_pack_BITMAP(void)
112 {
113 /* BITMAP */
114 TEST_TYPE_SIZE (BITMAP, 32)
115 TEST_TYPE_ALIGN (BITMAP, 8)
116 TEST_FIELD_SIZE (BITMAP, bmType, 4)
117 TEST_FIELD_ALIGN (BITMAP, bmType, 4)
118 TEST_FIELD_OFFSET(BITMAP, bmType, 0)
119 TEST_FIELD_SIZE (BITMAP, bmWidth, 4)
120 TEST_FIELD_ALIGN (BITMAP, bmWidth, 4)
121 TEST_FIELD_OFFSET(BITMAP, bmWidth, 4)
122 TEST_FIELD_SIZE (BITMAP, bmHeight, 4)
123 TEST_FIELD_ALIGN (BITMAP, bmHeight, 4)
124 TEST_FIELD_OFFSET(BITMAP, bmHeight, 8)
125 TEST_FIELD_SIZE (BITMAP, bmWidthBytes, 4)
126 TEST_FIELD_ALIGN (BITMAP, bmWidthBytes, 4)
127 TEST_FIELD_OFFSET(BITMAP, bmWidthBytes, 12)
128 TEST_FIELD_SIZE (BITMAP, bmPlanes, 2)
129 TEST_FIELD_ALIGN (BITMAP, bmPlanes, 2)
130 TEST_FIELD_OFFSET(BITMAP, bmPlanes, 16)
131 TEST_FIELD_SIZE (BITMAP, bmBitsPixel, 2)
132 TEST_FIELD_ALIGN (BITMAP, bmBitsPixel, 2)
133 TEST_FIELD_OFFSET(BITMAP, bmBitsPixel, 18)
134 TEST_FIELD_SIZE (BITMAP, bmBits, 8)
135 TEST_FIELD_ALIGN (BITMAP, bmBits, 8)
136 TEST_FIELD_OFFSET(BITMAP, bmBits, 24)
137 }
138
139 static void test_pack_BITMAPCOREHEADER(void)
140 {
141 /* BITMAPCOREHEADER */
142 TEST_TYPE_SIZE (BITMAPCOREHEADER, 12)
143 TEST_TYPE_ALIGN (BITMAPCOREHEADER, 4)
144 TEST_FIELD_SIZE (BITMAPCOREHEADER, bcSize, 4)
145 TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcSize, 4)
146 TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcSize, 0)
147 TEST_FIELD_SIZE (BITMAPCOREHEADER, bcWidth, 2)
148 TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcWidth, 2)
149 TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcWidth, 4)
150 TEST_FIELD_SIZE (BITMAPCOREHEADER, bcHeight, 2)
151 TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcHeight, 2)
152 TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcHeight, 6)
153 TEST_FIELD_SIZE (BITMAPCOREHEADER, bcPlanes, 2)
154 TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcPlanes, 2)
155 TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcPlanes, 8)
156 TEST_FIELD_SIZE (BITMAPCOREHEADER, bcBitCount, 2)
157 TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcBitCount, 2)
158 TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcBitCount, 10)
159 }
160
161 static void test_pack_BITMAPCOREINFO(void)
162 {
163 /* BITMAPCOREINFO */
164 TEST_TYPE_SIZE (BITMAPCOREINFO, 16)
165 TEST_TYPE_ALIGN (BITMAPCOREINFO, 4)
166 TEST_FIELD_SIZE (BITMAPCOREINFO, bmciHeader, 12)
167 TEST_FIELD_ALIGN (BITMAPCOREINFO, bmciHeader, 4)
168 TEST_FIELD_OFFSET(BITMAPCOREINFO, bmciHeader, 0)
169 TEST_FIELD_SIZE (BITMAPCOREINFO, bmciColors, 3)
170 TEST_FIELD_ALIGN (BITMAPCOREINFO, bmciColors, 1)
171 TEST_FIELD_OFFSET(BITMAPCOREINFO, bmciColors, 12)
172 }
173
174 static void test_pack_BITMAPFILEHEADER(void)
175 {
176 /* BITMAPFILEHEADER (pack 2) */
177 TEST_TYPE_SIZE (BITMAPFILEHEADER, 14)
178 TEST_TYPE_ALIGN (BITMAPFILEHEADER, 2)
179 TEST_FIELD_SIZE (BITMAPFILEHEADER, bfType, 2)
180 TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfType, 2)
181 TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfType, 0)
182 TEST_FIELD_SIZE (BITMAPFILEHEADER, bfSize, 4)
183 TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfSize, 2)
184 TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfSize, 2)
185 TEST_FIELD_SIZE (BITMAPFILEHEADER, bfReserved1, 2)
186 TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfReserved1, 2)
187 TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfReserved1, 6)
188 TEST_FIELD_SIZE (BITMAPFILEHEADER, bfReserved2, 2)
189 TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfReserved2, 2)
190 TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfReserved2, 8)
191 TEST_FIELD_SIZE (BITMAPFILEHEADER, bfOffBits, 4)
192 TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfOffBits, 2)
193 TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfOffBits, 10)
194 }
195
196 static void test_pack_BITMAPINFO(void)
197 {
198 /* BITMAPINFO */
199 TEST_TYPE_SIZE (BITMAPINFO, 44)
200 TEST_TYPE_ALIGN (BITMAPINFO, 4)
201 TEST_FIELD_SIZE (BITMAPINFO, bmiHeader, 40)
202 TEST_FIELD_ALIGN (BITMAPINFO, bmiHeader, 4)
203 TEST_FIELD_OFFSET(BITMAPINFO, bmiHeader, 0)
204 TEST_FIELD_SIZE (BITMAPINFO, bmiColors, 4)
205 TEST_FIELD_ALIGN (BITMAPINFO, bmiColors, 1)
206 TEST_FIELD_OFFSET(BITMAPINFO, bmiColors, 40)
207 }
208
209 static void test_pack_BITMAPINFOHEADER(void)
210 {
211 /* BITMAPINFOHEADER */
212 TEST_TYPE_SIZE (BITMAPINFOHEADER, 40)
213 TEST_TYPE_ALIGN (BITMAPINFOHEADER, 4)
214 TEST_FIELD_SIZE (BITMAPINFOHEADER, biSize, 4)
215 TEST_FIELD_ALIGN (BITMAPINFOHEADER, biSize, 4)
216 TEST_FIELD_OFFSET(BITMAPINFOHEADER, biSize, 0)
217 TEST_FIELD_SIZE (BITMAPINFOHEADER, biWidth, 4)
218 TEST_FIELD_ALIGN (BITMAPINFOHEADER, biWidth, 4)
219 TEST_FIELD_OFFSET(BITMAPINFOHEADER, biWidth, 4)
220 TEST_FIELD_SIZE (BITMAPINFOHEADER, biHeight, 4)
221 TEST_FIELD_ALIGN (BITMAPINFOHEADER, biHeight, 4)
222 TEST_FIELD_OFFSET(BITMAPINFOHEADER, biHeight, 8)
223 TEST_FIELD_SIZE (BITMAPINFOHEADER, biPlanes, 2)
224 TEST_FIELD_ALIGN (BITMAPINFOHEADER, biPlanes, 2)
225 TEST_FIELD_OFFSET(BITMAPINFOHEADER, biPlanes, 12)
226 TEST_FIELD_SIZE (BITMAPINFOHEADER, biBitCount, 2)
227 TEST_FIELD_ALIGN (BITMAPINFOHEADER, biBitCount, 2)
228 TEST_FIELD_OFFSET(BITMAPINFOHEADER, biBitCount, 14)
229 TEST_FIELD_SIZE (BITMAPINFOHEADER, biCompression, 4)
230 TEST_FIELD_ALIGN (BITMAPINFOHEADER, biCompression, 4)
231 TEST_FIELD_OFFSET(BITMAPINFOHEADER, biCompression, 16)
232 TEST_FIELD_SIZE (BITMAPINFOHEADER, biSizeImage, 4)
233 TEST_FIELD_ALIGN (BITMAPINFOHEADER, biSizeImage, 4)
234 TEST_FIELD_OFFSET(BITMAPINFOHEADER, biSizeImage, 20)
235 TEST_FIELD_SIZE (BITMAPINFOHEADER, biXPelsPerMeter, 4)
236 TEST_FIELD_ALIGN (BITMAPINFOHEADER, biXPelsPerMeter, 4)
237 TEST_FIELD_OFFSET(BITMAPINFOHEADER, biXPelsPerMeter, 24)
238 TEST_FIELD_SIZE (BITMAPINFOHEADER, biYPelsPerMeter, 4)
239 TEST_FIELD_ALIGN (BITMAPINFOHEADER, biYPelsPerMeter, 4)
240 TEST_FIELD_OFFSET(BITMAPINFOHEADER, biYPelsPerMeter, 28)
241 TEST_FIELD_SIZE (BITMAPINFOHEADER, biClrUsed, 4)
242 TEST_FIELD_ALIGN (BITMAPINFOHEADER, biClrUsed, 4)
243 TEST_FIELD_OFFSET(BITMAPINFOHEADER, biClrUsed, 32)
244 TEST_FIELD_SIZE (BITMAPINFOHEADER, biClrImportant, 4)
245 TEST_FIELD_ALIGN (BITMAPINFOHEADER, biClrImportant, 4)
246 TEST_FIELD_OFFSET(BITMAPINFOHEADER, biClrImportant, 36)
247 }
248
249 static void test_pack_BITMAPV4HEADER(void)
250 {
251 /* BITMAPV4HEADER */
252 TEST_TYPE_SIZE (BITMAPV4HEADER, 108)
253 TEST_TYPE_ALIGN (BITMAPV4HEADER, 4)
254 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4Size, 4)
255 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Size, 4)
256 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Size, 0)
257 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4Width, 4)
258 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Width, 4)
259 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Width, 4)
260 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4Height, 4)
261 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Height, 4)
262 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Height, 8)
263 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4Planes, 2)
264 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Planes, 2)
265 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Planes, 12)
266 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4BitCount, 2)
267 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4BitCount, 2)
268 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4BitCount, 14)
269 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4V4Compression, 4)
270 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4V4Compression, 4)
271 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4V4Compression, 16)
272 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4SizeImage, 4)
273 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4SizeImage, 4)
274 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4SizeImage, 20)
275 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4XPelsPerMeter, 4)
276 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4XPelsPerMeter, 4)
277 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4XPelsPerMeter, 24)
278 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4YPelsPerMeter, 4)
279 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4YPelsPerMeter, 4)
280 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4YPelsPerMeter, 28)
281 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4ClrUsed, 4)
282 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4ClrUsed, 4)
283 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4ClrUsed, 32)
284 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4ClrImportant, 4)
285 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4ClrImportant, 4)
286 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4ClrImportant, 36)
287 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4RedMask, 4)
288 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4RedMask, 4)
289 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4RedMask, 40)
290 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4GreenMask, 4)
291 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4GreenMask, 4)
292 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4GreenMask, 44)
293 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4BlueMask, 4)
294 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4BlueMask, 4)
295 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4BlueMask, 48)
296 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4AlphaMask, 4)
297 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4AlphaMask, 4)
298 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4AlphaMask, 52)
299 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4CSType, 4)
300 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4CSType, 4)
301 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4CSType, 56)
302 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4Endpoints, 36)
303 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Endpoints, 4)
304 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Endpoints, 60)
305 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4GammaRed, 4)
306 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4GammaRed, 4)
307 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4GammaRed, 96)
308 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4GammaGreen, 4)
309 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4GammaGreen, 4)
310 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4GammaGreen, 100)
311 TEST_FIELD_SIZE (BITMAPV4HEADER, bV4GammaBlue, 4)
312 TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4GammaBlue, 4)
313 TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4GammaBlue, 104)
314 }
315
316 static void test_pack_BITMAPV5HEADER(void)
317 {
318 /* BITMAPV5HEADER */
319 TEST_TYPE_SIZE (BITMAPV5HEADER, 124)
320 TEST_TYPE_ALIGN (BITMAPV5HEADER, 4)
321 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5Size, 4)
322 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Size, 4)
323 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Size, 0)
324 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5Width, 4)
325 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Width, 4)
326 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Width, 4)
327 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5Height, 4)
328 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Height, 4)
329 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Height, 8)
330 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5Planes, 2)
331 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Planes, 2)
332 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Planes, 12)
333 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5BitCount, 2)
334 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5BitCount, 2)
335 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5BitCount, 14)
336 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5Compression, 4)
337 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Compression, 4)
338 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Compression, 16)
339 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5SizeImage, 4)
340 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5SizeImage, 4)
341 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5SizeImage, 20)
342 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5XPelsPerMeter, 4)
343 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5XPelsPerMeter, 4)
344 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5XPelsPerMeter, 24)
345 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5YPelsPerMeter, 4)
346 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5YPelsPerMeter, 4)
347 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5YPelsPerMeter, 28)
348 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5ClrUsed, 4)
349 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5ClrUsed, 4)
350 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5ClrUsed, 32)
351 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5ClrImportant, 4)
352 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5ClrImportant, 4)
353 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5ClrImportant, 36)
354 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5RedMask, 4)
355 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5RedMask, 4)
356 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5RedMask, 40)
357 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5GreenMask, 4)
358 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5GreenMask, 4)
359 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5GreenMask, 44)
360 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5BlueMask, 4)
361 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5BlueMask, 4)
362 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5BlueMask, 48)
363 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5AlphaMask, 4)
364 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5AlphaMask, 4)
365 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5AlphaMask, 52)
366 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5CSType, 4)
367 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5CSType, 4)
368 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5CSType, 56)
369 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5Endpoints, 36)
370 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Endpoints, 4)
371 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Endpoints, 60)
372 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5GammaRed, 4)
373 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5GammaRed, 4)
374 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5GammaRed, 96)
375 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5GammaGreen, 4)
376 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5GammaGreen, 4)
377 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5GammaGreen, 100)
378 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5GammaBlue, 4)
379 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5GammaBlue, 4)
380 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5GammaBlue, 104)
381 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5Intent, 4)
382 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Intent, 4)
383 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Intent, 108)
384 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5ProfileData, 4)
385 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5ProfileData, 4)
386 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5ProfileData, 112)
387 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5ProfileSize, 4)
388 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5ProfileSize, 4)
389 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5ProfileSize, 116)
390 TEST_FIELD_SIZE (BITMAPV5HEADER, bV5Reserved, 4)
391 TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Reserved, 4)
392 TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Reserved, 120)
393 }
394
395 static void test_pack_BLENDFUNCTION(void)
396 {
397 /* BLENDFUNCTION */
398 TEST_TYPE_SIZE (BLENDFUNCTION, 4)
399 TEST_TYPE_ALIGN (BLENDFUNCTION, 1)
400 TEST_FIELD_SIZE (BLENDFUNCTION, BlendOp, 1)
401 TEST_FIELD_ALIGN (BLENDFUNCTION, BlendOp, 1)
402 TEST_FIELD_OFFSET(BLENDFUNCTION, BlendOp, 0)
403 TEST_FIELD_SIZE (BLENDFUNCTION, BlendFlags, 1)
404 TEST_FIELD_ALIGN (BLENDFUNCTION, BlendFlags, 1)
405 TEST_FIELD_OFFSET(BLENDFUNCTION, BlendFlags, 1)
406 TEST_FIELD_SIZE (BLENDFUNCTION, SourceConstantAlpha, 1)
407 TEST_FIELD_ALIGN (BLENDFUNCTION, SourceConstantAlpha, 1)
408 TEST_FIELD_OFFSET(BLENDFUNCTION, SourceConstantAlpha, 2)
409 TEST_FIELD_SIZE (BLENDFUNCTION, AlphaFormat, 1)
410 TEST_FIELD_ALIGN (BLENDFUNCTION, AlphaFormat, 1)
411 TEST_FIELD_OFFSET(BLENDFUNCTION, AlphaFormat, 3)
412 }
413
414 static void test_pack_CHARSETINFO(void)
415 {
416 /* CHARSETINFO */
417 TEST_TYPE_SIZE (CHARSETINFO, 32)
418 TEST_TYPE_ALIGN (CHARSETINFO, 4)
419 TEST_FIELD_SIZE (CHARSETINFO, ciCharset, 4)
420 TEST_FIELD_ALIGN (CHARSETINFO, ciCharset, 4)
421 TEST_FIELD_OFFSET(CHARSETINFO, ciCharset, 0)
422 TEST_FIELD_SIZE (CHARSETINFO, ciACP, 4)
423 TEST_FIELD_ALIGN (CHARSETINFO, ciACP, 4)
424 TEST_FIELD_OFFSET(CHARSETINFO, ciACP, 4)
425 TEST_FIELD_SIZE (CHARSETINFO, fs, 24)
426 TEST_FIELD_ALIGN (CHARSETINFO, fs, 4)
427 TEST_FIELD_OFFSET(CHARSETINFO, fs, 8)
428 }
429
430 static void test_pack_CIEXYZ(void)
431 {
432 /* CIEXYZ */
433 TEST_TYPE_SIZE (CIEXYZ, 12)
434 TEST_TYPE_ALIGN (CIEXYZ, 4)
435 TEST_FIELD_SIZE (CIEXYZ, ciexyzX, 4)
436 TEST_FIELD_ALIGN (CIEXYZ, ciexyzX, 4)
437 TEST_FIELD_OFFSET(CIEXYZ, ciexyzX, 0)
438 TEST_FIELD_SIZE (CIEXYZ, ciexyzY, 4)
439 TEST_FIELD_ALIGN (CIEXYZ, ciexyzY, 4)
440 TEST_FIELD_OFFSET(CIEXYZ, ciexyzY, 4)
441 TEST_FIELD_SIZE (CIEXYZ, ciexyzZ, 4)
442 TEST_FIELD_ALIGN (CIEXYZ, ciexyzZ, 4)
443 TEST_FIELD_OFFSET(CIEXYZ, ciexyzZ, 8)
444 }
445
446 static void test_pack_CIEXYZTRIPLE(void)
447 {
448 /* CIEXYZTRIPLE */
449 TEST_TYPE_SIZE (CIEXYZTRIPLE, 36)
450 TEST_TYPE_ALIGN (CIEXYZTRIPLE, 4)
451 TEST_FIELD_SIZE (CIEXYZTRIPLE, ciexyzRed, 12)
452 TEST_FIELD_ALIGN (CIEXYZTRIPLE, ciexyzRed, 4)
453 TEST_FIELD_OFFSET(CIEXYZTRIPLE, ciexyzRed, 0)
454 TEST_FIELD_SIZE (CIEXYZTRIPLE, ciexyzGreen, 12)
455 TEST_FIELD_ALIGN (CIEXYZTRIPLE, ciexyzGreen, 4)
456 TEST_FIELD_OFFSET(CIEXYZTRIPLE, ciexyzGreen, 12)
457 TEST_FIELD_SIZE (CIEXYZTRIPLE, ciexyzBlue, 12)
458 TEST_FIELD_ALIGN (CIEXYZTRIPLE, ciexyzBlue, 4)
459 TEST_FIELD_OFFSET(CIEXYZTRIPLE, ciexyzBlue, 24)
460 }
461
462 static void test_pack_COLOR16(void)
463 {
464 /* COLOR16 */
465 TEST_TYPE_SIZE (COLOR16, 2)
466 TEST_TYPE_ALIGN (COLOR16, 2)
467 }
468
469 static void test_pack_COLORADJUSTMENT(void)
470 {
471 /* COLORADJUSTMENT */
472 TEST_TYPE_SIZE (COLORADJUSTMENT, 24)
473 TEST_TYPE_ALIGN (COLORADJUSTMENT, 2)
474 TEST_FIELD_SIZE (COLORADJUSTMENT, caSize, 2)
475 TEST_FIELD_ALIGN (COLORADJUSTMENT, caSize, 2)
476 TEST_FIELD_OFFSET(COLORADJUSTMENT, caSize, 0)
477 TEST_FIELD_SIZE (COLORADJUSTMENT, caFlags, 2)
478 TEST_FIELD_ALIGN (COLORADJUSTMENT, caFlags, 2)
479 TEST_FIELD_OFFSET(COLORADJUSTMENT, caFlags, 2)
480 TEST_FIELD_SIZE (COLORADJUSTMENT, caIlluminantIndex, 2)
481 TEST_FIELD_ALIGN (COLORADJUSTMENT, caIlluminantIndex, 2)
482 TEST_FIELD_OFFSET(COLORADJUSTMENT, caIlluminantIndex, 4)
483 TEST_FIELD_SIZE (COLORADJUSTMENT, caRedGamma, 2)
484 TEST_FIELD_ALIGN (COLORADJUSTMENT, caRedGamma, 2)
485 TEST_FIELD_OFFSET(COLORADJUSTMENT, caRedGamma, 6)
486 TEST_FIELD_SIZE (COLORADJUSTMENT, caGreenGamma, 2)
487 TEST_FIELD_ALIGN (COLORADJUSTMENT, caGreenGamma, 2)
488 TEST_FIELD_OFFSET(COLORADJUSTMENT, caGreenGamma, 8)
489 TEST_FIELD_SIZE (COLORADJUSTMENT, caBlueGamma, 2)
490 TEST_FIELD_ALIGN (COLORADJUSTMENT, caBlueGamma, 2)
491 TEST_FIELD_OFFSET(COLORADJUSTMENT, caBlueGamma, 10)
492 TEST_FIELD_SIZE (COLORADJUSTMENT, caReferenceBlack, 2)
493 TEST_FIELD_ALIGN (COLORADJUSTMENT, caReferenceBlack, 2)
494 TEST_FIELD_OFFSET(COLORADJUSTMENT, caReferenceBlack, 12)
495 TEST_FIELD_SIZE (COLORADJUSTMENT, caReferenceWhite, 2)
496 TEST_FIELD_ALIGN (COLORADJUSTMENT, caReferenceWhite, 2)
497 TEST_FIELD_OFFSET(COLORADJUSTMENT, caReferenceWhite, 14)
498 TEST_FIELD_SIZE (COLORADJUSTMENT, caContrast, 2)
499 TEST_FIELD_ALIGN (COLORADJUSTMENT, caContrast, 2)
500 TEST_FIELD_OFFSET(COLORADJUSTMENT, caContrast, 16)
501 TEST_FIELD_SIZE (COLORADJUSTMENT, caBrightness, 2)
502 TEST_FIELD_ALIGN (COLORADJUSTMENT, caBrightness, 2)
503 TEST_FIELD_OFFSET(COLORADJUSTMENT, caBrightness, 18)
504 TEST_FIELD_SIZE (COLORADJUSTMENT, caColorfulness, 2)
505 TEST_FIELD_ALIGN (COLORADJUSTMENT, caColorfulness, 2)
506 TEST_FIELD_OFFSET(COLORADJUSTMENT, caColorfulness, 20)
507 TEST_FIELD_SIZE (COLORADJUSTMENT, caRedGreenTint, 2)
508 TEST_FIELD_ALIGN (COLORADJUSTMENT, caRedGreenTint, 2)
509 TEST_FIELD_OFFSET(COLORADJUSTMENT, caRedGreenTint, 22)
510 }
511
512 static void test_pack_DEVMODEA(void)
513 {
514 /* DEVMODEA */
515 TEST_FIELD_SIZE (DEVMODEA, dmDeviceName, 32)
516 TEST_FIELD_ALIGN (DEVMODEA, dmDeviceName, 1)
517 TEST_FIELD_OFFSET(DEVMODEA, dmDeviceName, 0)
518 TEST_FIELD_SIZE (DEVMODEA, dmSpecVersion, 2)
519 TEST_FIELD_ALIGN (DEVMODEA, dmSpecVersion, 2)
520 TEST_FIELD_OFFSET(DEVMODEA, dmSpecVersion, 32)
521 TEST_FIELD_SIZE (DEVMODEA, dmDriverVersion, 2)
522 TEST_FIELD_ALIGN (DEVMODEA, dmDriverVersion, 2)
523 TEST_FIELD_OFFSET(DEVMODEA, dmDriverVersion, 34)
524 TEST_FIELD_SIZE (DEVMODEA, dmSize, 2)
525 TEST_FIELD_ALIGN (DEVMODEA, dmSize, 2)
526 TEST_FIELD_OFFSET(DEVMODEA, dmSize, 36)
527 TEST_FIELD_SIZE (DEVMODEA, dmDriverExtra, 2)
528 TEST_FIELD_ALIGN (DEVMODEA, dmDriverExtra, 2)
529 TEST_FIELD_OFFSET(DEVMODEA, dmDriverExtra, 38)
530 TEST_FIELD_SIZE (DEVMODEA, dmFields, 4)
531 TEST_FIELD_ALIGN (DEVMODEA, dmFields, 4)
532 TEST_FIELD_OFFSET(DEVMODEA, dmFields, 40)
533 }
534
535 static void test_pack_DEVMODEW(void)
536 {
537 /* DEVMODEW */
538 TEST_FIELD_SIZE (DEVMODEW, dmDeviceName, 64)
539 TEST_FIELD_ALIGN (DEVMODEW, dmDeviceName, 2)
540 TEST_FIELD_OFFSET(DEVMODEW, dmDeviceName, 0)
541 TEST_FIELD_SIZE (DEVMODEW, dmSpecVersion, 2)
542 TEST_FIELD_ALIGN (DEVMODEW, dmSpecVersion, 2)
543 TEST_FIELD_OFFSET(DEVMODEW, dmSpecVersion, 64)
544 TEST_FIELD_SIZE (DEVMODEW, dmDriverVersion, 2)
545 TEST_FIELD_ALIGN (DEVMODEW, dmDriverVersion, 2)
546 TEST_FIELD_OFFSET(DEVMODEW, dmDriverVersion, 66)
547 TEST_FIELD_SIZE (DEVMODEW, dmSize, 2)
548 TEST_FIELD_ALIGN (DEVMODEW, dmSize, 2)
549 TEST_FIELD_OFFSET(DEVMODEW, dmSize, 68)
550 TEST_FIELD_SIZE (DEVMODEW, dmDriverExtra, 2)
551 TEST_FIELD_ALIGN (DEVMODEW, dmDriverExtra, 2)
552 TEST_FIELD_OFFSET(DEVMODEW, dmDriverExtra, 70)
553 TEST_FIELD_SIZE (DEVMODEW, dmFields, 4)
554 TEST_FIELD_ALIGN (DEVMODEW, dmFields, 4)
555 TEST_FIELD_OFFSET(DEVMODEW, dmFields, 72)
556 }
557
558 static void test_pack_DIBSECTION(void)
559 {
560 /* DIBSECTION */
561 TEST_TYPE_SIZE (DIBSECTION, 104)
562 TEST_TYPE_ALIGN (DIBSECTION, 8)
563 TEST_FIELD_SIZE (DIBSECTION, dsBm, 32)
564 TEST_FIELD_ALIGN (DIBSECTION, dsBm, 8)
565 TEST_FIELD_OFFSET(DIBSECTION, dsBm, 0)
566 TEST_FIELD_SIZE (DIBSECTION, dsBmih, 40)
567 TEST_FIELD_ALIGN (DIBSECTION, dsBmih, 4)
568 TEST_FIELD_OFFSET(DIBSECTION, dsBmih, 32)
569 TEST_FIELD_SIZE (DIBSECTION, dsBitfields, 12)
570 TEST_FIELD_ALIGN (DIBSECTION, dsBitfields, 4)
571 TEST_FIELD_OFFSET(DIBSECTION, dsBitfields, 72)
572 TEST_FIELD_SIZE (DIBSECTION, dshSection, 8)
573 TEST_FIELD_ALIGN (DIBSECTION, dshSection, 8)
574 TEST_FIELD_OFFSET(DIBSECTION, dshSection, 88)
575 TEST_FIELD_SIZE (DIBSECTION, dsOffset, 4)
576 TEST_FIELD_ALIGN (DIBSECTION, dsOffset, 4)
577 TEST_FIELD_OFFSET(DIBSECTION, dsOffset, 96)
578 }
579
580 static void test_pack_DISPLAY_DEVICEA(void)
581 {
582 /* DISPLAY_DEVICEA */
583 TEST_TYPE_SIZE (DISPLAY_DEVICEA, 424)
584 TEST_TYPE_ALIGN (DISPLAY_DEVICEA, 4)
585 TEST_FIELD_SIZE (DISPLAY_DEVICEA, cb, 4)
586 TEST_FIELD_ALIGN (DISPLAY_DEVICEA, cb, 4)
587 TEST_FIELD_OFFSET(DISPLAY_DEVICEA, cb, 0)
588 TEST_FIELD_SIZE (DISPLAY_DEVICEA, DeviceName, 32)
589 TEST_FIELD_ALIGN (DISPLAY_DEVICEA, DeviceName, 1)
590 TEST_FIELD_OFFSET(DISPLAY_DEVICEA, DeviceName, 4)
591 TEST_FIELD_SIZE (DISPLAY_DEVICEA, DeviceString, 128)
592 TEST_FIELD_ALIGN (DISPLAY_DEVICEA, DeviceString, 1)
593 TEST_FIELD_OFFSET(DISPLAY_DEVICEA, DeviceString, 36)
594 TEST_FIELD_SIZE (DISPLAY_DEVICEA, StateFlags, 4)
595 TEST_FIELD_ALIGN (DISPLAY_DEVICEA, StateFlags, 4)
596 TEST_FIELD_OFFSET(DISPLAY_DEVICEA, StateFlags, 164)
597 TEST_FIELD_SIZE (DISPLAY_DEVICEA, DeviceID, 128)
598 TEST_FIELD_ALIGN (DISPLAY_DEVICEA, DeviceID, 1)
599 TEST_FIELD_OFFSET(DISPLAY_DEVICEA, DeviceID, 168)
600 TEST_FIELD_SIZE (DISPLAY_DEVICEA, DeviceKey, 128)
601 TEST_FIELD_ALIGN (DISPLAY_DEVICEA, DeviceKey, 1)
602 TEST_FIELD_OFFSET(DISPLAY_DEVICEA, DeviceKey, 296)
603 }
604
605 static void test_pack_DISPLAY_DEVICEW(void)
606 {
607 /* DISPLAY_DEVICEW */
608 TEST_TYPE_SIZE (DISPLAY_DEVICEW, 840)
609 TEST_TYPE_ALIGN (DISPLAY_DEVICEW, 4)
610 TEST_FIELD_SIZE (DISPLAY_DEVICEW, cb, 4)
611 TEST_FIELD_ALIGN (DISPLAY_DEVICEW, cb, 4)
612 TEST_FIELD_OFFSET(DISPLAY_DEVICEW, cb, 0)
613 TEST_FIELD_SIZE (DISPLAY_DEVICEW, DeviceName, 64)
614 TEST_FIELD_ALIGN (DISPLAY_DEVICEW, DeviceName, 2)
615 TEST_FIELD_OFFSET(DISPLAY_DEVICEW, DeviceName, 4)
616 TEST_FIELD_SIZE (DISPLAY_DEVICEW, DeviceString, 256)
617 TEST_FIELD_ALIGN (DISPLAY_DEVICEW, DeviceString, 2)
618 TEST_FIELD_OFFSET(DISPLAY_DEVICEW, DeviceString, 68)
619 TEST_FIELD_SIZE (DISPLAY_DEVICEW, StateFlags, 4)
620 TEST_FIELD_ALIGN (DISPLAY_DEVICEW, StateFlags, 4)
621 TEST_FIELD_OFFSET(DISPLAY_DEVICEW, StateFlags, 324)
622 TEST_FIELD_SIZE (DISPLAY_DEVICEW, DeviceID, 256)
623 TEST_FIELD_ALIGN (DISPLAY_DEVICEW, DeviceID, 2)
624 TEST_FIELD_OFFSET(DISPLAY_DEVICEW, DeviceID, 328)
625 TEST_FIELD_SIZE (DISPLAY_DEVICEW, DeviceKey, 256)
626 TEST_FIELD_ALIGN (DISPLAY_DEVICEW, DeviceKey, 2)
627 TEST_FIELD_OFFSET(DISPLAY_DEVICEW, DeviceKey, 584)
628 }
629
630 static void test_pack_DOCINFOA(void)
631 {
632 /* DOCINFOA */
633 TEST_TYPE_SIZE (DOCINFOA, 40)
634 TEST_TYPE_ALIGN (DOCINFOA, 8)
635 TEST_FIELD_SIZE (DOCINFOA, cbSize, 4)
636 TEST_FIELD_ALIGN (DOCINFOA, cbSize, 4)
637 TEST_FIELD_OFFSET(DOCINFOA, cbSize, 0)
638 TEST_FIELD_SIZE (DOCINFOA, lpszDocName, 8)
639 TEST_FIELD_ALIGN (DOCINFOA, lpszDocName, 8)
640 TEST_FIELD_OFFSET(DOCINFOA, lpszDocName, 8)
641 TEST_FIELD_SIZE (DOCINFOA, lpszOutput, 8)
642 TEST_FIELD_ALIGN (DOCINFOA, lpszOutput, 8)
643 TEST_FIELD_OFFSET(DOCINFOA, lpszOutput, 16)
644 TEST_FIELD_SIZE (DOCINFOA, lpszDatatype, 8)
645 TEST_FIELD_ALIGN (DOCINFOA, lpszDatatype, 8)
646 TEST_FIELD_OFFSET(DOCINFOA, lpszDatatype, 24)
647 TEST_FIELD_SIZE (DOCINFOA, fwType, 4)
648 TEST_FIELD_ALIGN (DOCINFOA, fwType, 4)
649 TEST_FIELD_OFFSET(DOCINFOA, fwType, 32)
650 }
651
652 static void test_pack_DOCINFOW(void)
653 {
654 /* DOCINFOW */
655 TEST_TYPE_SIZE (DOCINFOW, 40)
656 TEST_TYPE_ALIGN (DOCINFOW, 8)
657 TEST_FIELD_SIZE (DOCINFOW, cbSize, 4)
658 TEST_FIELD_ALIGN (DOCINFOW, cbSize, 4)
659 TEST_FIELD_OFFSET(DOCINFOW, cbSize, 0)
660 TEST_FIELD_SIZE (DOCINFOW, lpszDocName, 8)
661 TEST_FIELD_ALIGN (DOCINFOW, lpszDocName, 8)
662 TEST_FIELD_OFFSET(DOCINFOW, lpszDocName, 8)
663 TEST_FIELD_SIZE (DOCINFOW, lpszOutput, 8)
664 TEST_FIELD_ALIGN (DOCINFOW, lpszOutput, 8)
665 TEST_FIELD_OFFSET(DOCINFOW, lpszOutput, 16)
666 TEST_FIELD_SIZE (DOCINFOW, lpszDatatype, 8)
667 TEST_FIELD_ALIGN (DOCINFOW, lpszDatatype, 8)
668 TEST_FIELD_OFFSET(DOCINFOW, lpszDatatype, 24)
669 TEST_FIELD_SIZE (DOCINFOW, fwType, 4)
670 TEST_FIELD_ALIGN (DOCINFOW, fwType, 4)
671 TEST_FIELD_OFFSET(DOCINFOW, fwType, 32)
672 }
673
674 static void test_pack_EMR(void)
675 {
676 /* EMR */
677 TEST_TYPE_SIZE (EMR, 8)
678 TEST_TYPE_ALIGN (EMR, 4)
679 TEST_FIELD_SIZE (EMR, iType, 4)
680 TEST_FIELD_ALIGN (EMR, iType, 4)
681 TEST_FIELD_OFFSET(EMR, iType, 0)
682 TEST_FIELD_SIZE (EMR, nSize, 4)
683 TEST_FIELD_ALIGN (EMR, nSize, 4)
684 TEST_FIELD_OFFSET(EMR, nSize, 4)
685 }
686
687 static void test_pack_EMRABORTPATH(void)
688 {
689 /* EMRABORTPATH */
690 TEST_TYPE_SIZE (EMRABORTPATH, 8)
691 TEST_TYPE_ALIGN (EMRABORTPATH, 4)
692 TEST_FIELD_SIZE (EMRABORTPATH, emr, 8)
693 TEST_FIELD_ALIGN (EMRABORTPATH, emr, 4)
694 TEST_FIELD_OFFSET(EMRABORTPATH, emr, 0)
695 }
696
697 static void test_pack_EMRANGLEARC(void)
698 {
699 /* EMRANGLEARC */
700 TEST_TYPE_SIZE (EMRANGLEARC, 28)
701 TEST_TYPE_ALIGN (EMRANGLEARC, 4)
702 TEST_FIELD_SIZE (EMRANGLEARC, emr, 8)
703 TEST_FIELD_ALIGN (EMRANGLEARC, emr, 4)
704 TEST_FIELD_OFFSET(EMRANGLEARC, emr, 0)
705 TEST_FIELD_SIZE (EMRANGLEARC, ptlCenter, 8)
706 TEST_FIELD_ALIGN (EMRANGLEARC, ptlCenter, 4)
707 TEST_FIELD_OFFSET(EMRANGLEARC, ptlCenter, 8)
708 TEST_FIELD_SIZE (EMRANGLEARC, nRadius, 4)
709 TEST_FIELD_ALIGN (EMRANGLEARC, nRadius, 4)
710 TEST_FIELD_OFFSET(EMRANGLEARC, nRadius, 16)
711 TEST_FIELD_SIZE (EMRANGLEARC, eStartAngle, 4)
712 TEST_FIELD_ALIGN (EMRANGLEARC, eStartAngle, 4)
713 TEST_FIELD_OFFSET(EMRANGLEARC, eStartAngle, 20)
714 TEST_FIELD_SIZE (EMRANGLEARC, eSweepAngle, 4)
715 TEST_FIELD_ALIGN (EMRANGLEARC, eSweepAngle, 4)
716 TEST_FIELD_OFFSET(EMRANGLEARC, eSweepAngle, 24)
717 }
718
719 static void test_pack_EMRARC(void)
720 {
721 /* EMRARC */
722 TEST_TYPE_SIZE (EMRARC, 40)
723 TEST_TYPE_ALIGN (EMRARC, 4)
724 TEST_FIELD_SIZE (EMRARC, emr, 8)
725 TEST_FIELD_ALIGN (EMRARC, emr, 4)
726 TEST_FIELD_OFFSET(EMRARC, emr, 0)
727 TEST_FIELD_SIZE (EMRARC, rclBox, 16)
728 TEST_FIELD_ALIGN (EMRARC, rclBox, 4)
729 TEST_FIELD_OFFSET(EMRARC, rclBox, 8)
730 TEST_FIELD_SIZE (EMRARC, ptlStart, 8)
731 TEST_FIELD_ALIGN (EMRARC, ptlStart, 4)
732 TEST_FIELD_OFFSET(EMRARC, ptlStart, 24)
733 TEST_FIELD_SIZE (EMRARC, ptlEnd, 8)
734 TEST_FIELD_ALIGN (EMRARC, ptlEnd, 4)
735 TEST_FIELD_OFFSET(EMRARC, ptlEnd, 32)
736 }
737
738 static void test_pack_EMRARCTO(void)
739 {
740 /* EMRARCTO */
741 TEST_TYPE_SIZE (EMRARCTO, 40)
742 TEST_TYPE_ALIGN (EMRARCTO, 4)
743 TEST_FIELD_SIZE (EMRARCTO, emr, 8)
744 TEST_FIELD_ALIGN (EMRARCTO, emr, 4)
745 TEST_FIELD_OFFSET(EMRARCTO, emr, 0)
746 TEST_FIELD_SIZE (EMRARCTO, rclBox, 16)
747 TEST_FIELD_ALIGN (EMRARCTO, rclBox, 4)
748 TEST_FIELD_OFFSET(EMRARCTO, rclBox, 8)
749 TEST_FIELD_SIZE (EMRARCTO, ptlStart, 8)
750 TEST_FIELD_ALIGN (EMRARCTO, ptlStart, 4)
751 TEST_FIELD_OFFSET(EMRARCTO, ptlStart, 24)
752 TEST_FIELD_SIZE (EMRARCTO, ptlEnd, 8)
753 TEST_FIELD_ALIGN (EMRARCTO, ptlEnd, 4)
754 TEST_FIELD_OFFSET(EMRARCTO, ptlEnd, 32)
755 }
756
757 static void test_pack_EMRBEGINPATH(void)
758 {
759 /* EMRBEGINPATH */
760 TEST_TYPE_SIZE (EMRBEGINPATH, 8)
761 TEST_TYPE_ALIGN (EMRBEGINPATH, 4)
762 TEST_FIELD_SIZE (EMRBEGINPATH, emr, 8)
763 TEST_FIELD_ALIGN (EMRBEGINPATH, emr, 4)
764 TEST_FIELD_OFFSET(EMRBEGINPATH, emr, 0)
765 }
766
767 static void test_pack_EMRBITBLT(void)
768 {
769 /* EMRBITBLT */
770 TEST_TYPE_SIZE (EMRBITBLT, 100)
771 TEST_TYPE_ALIGN (EMRBITBLT, 4)
772 TEST_FIELD_SIZE (EMRBITBLT, emr, 8)
773 TEST_FIELD_ALIGN (EMRBITBLT, emr, 4)
774 TEST_FIELD_OFFSET(EMRBITBLT, emr, 0)
775 TEST_FIELD_SIZE (EMRBITBLT, rclBounds, 16)
776 TEST_FIELD_ALIGN (EMRBITBLT, rclBounds, 4)
777 TEST_FIELD_OFFSET(EMRBITBLT, rclBounds, 8)
778 TEST_FIELD_SIZE (EMRBITBLT, xDest, 4)
779 TEST_FIELD_ALIGN (EMRBITBLT, xDest, 4)
780 TEST_FIELD_OFFSET(EMRBITBLT, xDest, 24)
781 TEST_FIELD_SIZE (EMRBITBLT, yDest, 4)
782 TEST_FIELD_ALIGN (EMRBITBLT, yDest, 4)
783 TEST_FIELD_OFFSET(EMRBITBLT, yDest, 28)
784 TEST_FIELD_SIZE (EMRBITBLT, cxDest, 4)
785 TEST_FIELD_ALIGN (EMRBITBLT, cxDest, 4)
786 TEST_FIELD_OFFSET(EMRBITBLT, cxDest, 32)
787 TEST_FIELD_SIZE (EMRBITBLT, cyDest, 4)
788 TEST_FIELD_ALIGN (EMRBITBLT, cyDest, 4)
789 TEST_FIELD_OFFSET(EMRBITBLT, cyDest, 36)
790 TEST_FIELD_SIZE (EMRBITBLT, dwRop, 4)
791 TEST_FIELD_ALIGN (EMRBITBLT, dwRop, 4)
792 TEST_FIELD_OFFSET(EMRBITBLT, dwRop, 40)
793 TEST_FIELD_SIZE (EMRBITBLT, xSrc, 4)
794 TEST_FIELD_ALIGN (EMRBITBLT, xSrc, 4)
795 TEST_FIELD_OFFSET(EMRBITBLT, xSrc, 44)
796 TEST_FIELD_SIZE (EMRBITBLT, ySrc, 4)
797 TEST_FIELD_ALIGN (EMRBITBLT, ySrc, 4)
798 TEST_FIELD_OFFSET(EMRBITBLT, ySrc, 48)
799 TEST_FIELD_SIZE (EMRBITBLT, xformSrc, 24)
800 TEST_FIELD_ALIGN (EMRBITBLT, xformSrc, 4)
801 TEST_FIELD_OFFSET(EMRBITBLT, xformSrc, 52)
802 TEST_FIELD_SIZE (EMRBITBLT, crBkColorSrc, 4)
803 TEST_FIELD_ALIGN (EMRBITBLT, crBkColorSrc, 4)
804 TEST_FIELD_OFFSET(EMRBITBLT, crBkColorSrc, 76)
805 TEST_FIELD_SIZE (EMRBITBLT, iUsageSrc, 4)
806 TEST_FIELD_ALIGN (EMRBITBLT, iUsageSrc, 4)
807 TEST_FIELD_OFFSET(EMRBITBLT, iUsageSrc, 80)
808 TEST_FIELD_SIZE (EMRBITBLT, offBmiSrc, 4)
809 TEST_FIELD_ALIGN (EMRBITBLT, offBmiSrc, 4)
810 TEST_FIELD_OFFSET(EMRBITBLT, offBmiSrc, 84)
811 TEST_FIELD_SIZE (EMRBITBLT, cbBmiSrc, 4)
812 TEST_FIELD_ALIGN (EMRBITBLT, cbBmiSrc, 4)
813 TEST_FIELD_OFFSET(EMRBITBLT, cbBmiSrc, 88)
814 TEST_FIELD_SIZE (EMRBITBLT, offBitsSrc, 4)
815 TEST_FIELD_ALIGN (EMRBITBLT, offBitsSrc, 4)
816 TEST_FIELD_OFFSET(EMRBITBLT, offBitsSrc, 92)
817 TEST_FIELD_SIZE (EMRBITBLT, cbBitsSrc, 4)
818 TEST_FIELD_ALIGN (EMRBITBLT, cbBitsSrc, 4)
819 TEST_FIELD_OFFSET(EMRBITBLT, cbBitsSrc, 96)
820 }
821
822 static void test_pack_EMRCHORD(void)
823 {
824 /* EMRCHORD */
825 TEST_TYPE_SIZE (EMRCHORD, 40)
826 TEST_TYPE_ALIGN (EMRCHORD, 4)
827 TEST_FIELD_SIZE (EMRCHORD, emr, 8)
828 TEST_FIELD_ALIGN (EMRCHORD, emr, 4)
829 TEST_FIELD_OFFSET(EMRCHORD, emr, 0)
830 TEST_FIELD_SIZE (EMRCHORD, rclBox, 16)
831 TEST_FIELD_ALIGN (EMRCHORD, rclBox, 4)
832 TEST_FIELD_OFFSET(EMRCHORD, rclBox, 8)
833 TEST_FIELD_SIZE (EMRCHORD, ptlStart, 8)
834 TEST_FIELD_ALIGN (EMRCHORD, ptlStart, 4)
835 TEST_FIELD_OFFSET(EMRCHORD, ptlStart, 24)
836 TEST_FIELD_SIZE (EMRCHORD, ptlEnd, 8)
837 TEST_FIELD_ALIGN (EMRCHORD, ptlEnd, 4)
838 TEST_FIELD_OFFSET(EMRCHORD, ptlEnd, 32)
839 }
840
841 static void test_pack_EMRCLOSEFIGURE(void)
842 {
843 /* EMRCLOSEFIGURE */
844 TEST_TYPE_SIZE (EMRCLOSEFIGURE, 8)
845 TEST_TYPE_ALIGN (EMRCLOSEFIGURE, 4)
846 TEST_FIELD_SIZE (EMRCLOSEFIGURE, emr, 8)
847 TEST_FIELD_ALIGN (EMRCLOSEFIGURE, emr, 4)
848 TEST_FIELD_OFFSET(EMRCLOSEFIGURE, emr, 0)
849 }
850
851 static void test_pack_EMRCREATEBRUSHINDIRECT(void)
852 {
853 /* EMRCREATEBRUSHINDIRECT */
854 TEST_TYPE_SIZE (EMRCREATEBRUSHINDIRECT, 24)
855 TEST_TYPE_ALIGN (EMRCREATEBRUSHINDIRECT, 4)
856 TEST_FIELD_SIZE (EMRCREATEBRUSHINDIRECT, emr, 8)
857 TEST_FIELD_ALIGN (EMRCREATEBRUSHINDIRECT, emr, 4)
858 TEST_FIELD_OFFSET(EMRCREATEBRUSHINDIRECT, emr, 0)
859 TEST_FIELD_SIZE (EMRCREATEBRUSHINDIRECT, ihBrush, 4)
860 TEST_FIELD_ALIGN (EMRCREATEBRUSHINDIRECT, ihBrush, 4)
861 TEST_FIELD_OFFSET(EMRCREATEBRUSHINDIRECT, ihBrush, 8)
862 TEST_FIELD_SIZE (EMRCREATEBRUSHINDIRECT, lb, 12)
863 TEST_FIELD_ALIGN (EMRCREATEBRUSHINDIRECT, lb, 4)
864 TEST_FIELD_OFFSET(EMRCREATEBRUSHINDIRECT, lb, 12)
865 }
866
867 static void test_pack_EMRCREATECOLORSPACE(void)
868 {
869 /* EMRCREATECOLORSPACE */
870 TEST_TYPE_SIZE (EMRCREATECOLORSPACE, 340)
871 TEST_TYPE_ALIGN (EMRCREATECOLORSPACE, 4)
872 TEST_FIELD_SIZE (EMRCREATECOLORSPACE, emr, 8)
873 TEST_FIELD_ALIGN (EMRCREATECOLORSPACE, emr, 4)
874 TEST_FIELD_OFFSET(EMRCREATECOLORSPACE, emr, 0)
875 TEST_FIELD_SIZE (EMRCREATECOLORSPACE, ihCS, 4)
876 TEST_FIELD_ALIGN (EMRCREATECOLORSPACE, ihCS, 4)
877 TEST_FIELD_OFFSET(EMRCREATECOLORSPACE, ihCS, 8)
878 TEST_FIELD_SIZE (EMRCREATECOLORSPACE, lcs, 328)
879 TEST_FIELD_ALIGN (EMRCREATECOLORSPACE, lcs, 4)
880 TEST_FIELD_OFFSET(EMRCREATECOLORSPACE, lcs, 12)
881 }
882
883 static void test_pack_EMRCREATECOLORSPACEW(void)
884 {
885 /* EMRCREATECOLORSPACEW */
886 TEST_TYPE_SIZE (EMRCREATECOLORSPACEW, 612)
887 TEST_TYPE_ALIGN (EMRCREATECOLORSPACEW, 4)
888 TEST_FIELD_SIZE (EMRCREATECOLORSPACEW, emr, 8)
889 TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, emr, 4)
890 TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, emr, 0)
891 TEST_FIELD_SIZE (EMRCREATECOLORSPACEW, ihCS, 4)
892 TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, ihCS, 4)
893 TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, ihCS, 8)
894 TEST_FIELD_SIZE (EMRCREATECOLORSPACEW, lcs, 588)
895 TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, lcs, 4)
896 TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, lcs, 12)
897 TEST_FIELD_SIZE (EMRCREATECOLORSPACEW, dwFlags, 4)
898 TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, dwFlags, 4)
899 TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, dwFlags, 600)
900 TEST_FIELD_SIZE (EMRCREATECOLORSPACEW, cbData, 4)
901 TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, cbData, 4)
902 TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, cbData, 604)
903 TEST_FIELD_SIZE (EMRCREATECOLORSPACEW, Data, 1)
904 TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, Data, 1)
905 TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, Data, 608)
906 }
907
908 static void test_pack_EMRCREATEDIBPATTERNBRUSHPT(void)
909 {
910 /* EMRCREATEDIBPATTERNBRUSHPT */
911 TEST_TYPE_SIZE (EMRCREATEDIBPATTERNBRUSHPT, 32)
912 TEST_TYPE_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, 4)
913 TEST_FIELD_SIZE (EMRCREATEDIBPATTERNBRUSHPT, emr, 8)
914 TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, emr, 4)
915 TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, emr, 0)
916 TEST_FIELD_SIZE (EMRCREATEDIBPATTERNBRUSHPT, ihBrush, 4)
917 TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, ihBrush, 4)
918 TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, ihBrush, 8)
919 TEST_FIELD_SIZE (EMRCREATEDIBPATTERNBRUSHPT, iUsage, 4)
920 TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, iUsage, 4)
921 TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, iUsage, 12)
922 TEST_FIELD_SIZE (EMRCREATEDIBPATTERNBRUSHPT, offBmi, 4)
923 TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, offBmi, 4)
924 TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, offBmi, 16)
925 TEST_FIELD_SIZE (EMRCREATEDIBPATTERNBRUSHPT, cbBmi, 4)
926 TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, cbBmi, 4)
927 TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, cbBmi, 20)
928 TEST_FIELD_SIZE (EMRCREATEDIBPATTERNBRUSHPT, offBits, 4)
929 TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, offBits, 4)
930 TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, offBits, 24)
931 TEST_FIELD_SIZE (EMRCREATEDIBPATTERNBRUSHPT, cbBits, 4)
932 TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, cbBits, 4)
933 TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, cbBits, 28)
934 }
935
936 static void test_pack_EMRCREATEMONOBRUSH(void)
937 {
938 /* EMRCREATEMONOBRUSH */
939 TEST_TYPE_SIZE (EMRCREATEMONOBRUSH, 32)
940 TEST_TYPE_ALIGN (EMRCREATEMONOBRUSH, 4)
941 TEST_FIELD_SIZE (EMRCREATEMONOBRUSH, emr, 8)
942 TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, emr, 4)
943 TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, emr, 0)
944 TEST_FIELD_SIZE (EMRCREATEMONOBRUSH, ihBrush, 4)
945 TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, ihBrush, 4)
946 TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, ihBrush, 8)
947 TEST_FIELD_SIZE (EMRCREATEMONOBRUSH, iUsage, 4)
948 TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, iUsage, 4)
949 TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, iUsage, 12)
950 TEST_FIELD_SIZE (EMRCREATEMONOBRUSH, offBmi, 4)
951 TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, offBmi, 4)
952 TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, offBmi, 16)
953 TEST_FIELD_SIZE (EMRCREATEMONOBRUSH, cbBmi, 4)
954 TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, cbBmi, 4)
955 TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, cbBmi, 20)
956 TEST_FIELD_SIZE (EMRCREATEMONOBRUSH, offBits, 4)
957 TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, offBits, 4)
958 TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, offBits, 24)
959 TEST_FIELD_SIZE (EMRCREATEMONOBRUSH, cbBits, 4)
960 TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, cbBits, 4)
961 TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, cbBits, 28)
962 }
963
964 static void test_pack_EMRCREATEPEN(void)
965 {
966 /* EMRCREATEPEN */
967 TEST_TYPE_SIZE (EMRCREATEPEN, 28)
968 TEST_TYPE_ALIGN (EMRCREATEPEN, 4)
969 TEST_FIELD_SIZE (EMRCREATEPEN, emr, 8)
970 TEST_FIELD_ALIGN (EMRCREATEPEN, emr, 4)
971 TEST_FIELD_OFFSET(EMRCREATEPEN, emr, 0)
972 TEST_FIELD_SIZE (EMRCREATEPEN, ihPen, 4)
973 TEST_FIELD_ALIGN (EMRCREATEPEN, ihPen, 4)
974 TEST_FIELD_OFFSET(EMRCREATEPEN, ihPen, 8)
975 TEST_FIELD_SIZE (EMRCREATEPEN, lopn, 16)
976 TEST_FIELD_ALIGN (EMRCREATEPEN, lopn, 4)
977 TEST_FIELD_OFFSET(EMRCREATEPEN, lopn, 12)
978 }
979
980 static void test_pack_EMRDELETECOLORSPACE(void)
981 {
982 /* EMRDELETECOLORSPACE */
983 TEST_TYPE_SIZE (EMRDELETECOLORSPACE, 12)
984 TEST_TYPE_ALIGN (EMRDELETECOLORSPACE, 4)
985 TEST_FIELD_SIZE (EMRDELETECOLORSPACE, emr, 8)
986 TEST_FIELD_ALIGN (EMRDELETECOLORSPACE, emr, 4)
987 TEST_FIELD_OFFSET(EMRDELETECOLORSPACE, emr, 0)
988 TEST_FIELD_SIZE (EMRDELETECOLORSPACE, ihCS, 4)
989 TEST_FIELD_ALIGN (EMRDELETECOLORSPACE, ihCS, 4)
990 TEST_FIELD_OFFSET(EMRDELETECOLORSPACE, ihCS, 8)
991 }
992
993 static void test_pack_EMRDELETEOBJECT(void)
994 {
995 /* EMRDELETEOBJECT */
996 TEST_TYPE_SIZE (EMRDELETEOBJECT, 12)
997 TEST_TYPE_ALIGN (EMRDELETEOBJECT, 4)
998 TEST_FIELD_SIZE (EMRDELETEOBJECT, emr, 8)
999 TEST_FIELD_ALIGN (EMRDELETEOBJECT, emr, 4)
1000 TEST_FIELD_OFFSET(EMRDELETEOBJECT, emr, 0)
1001 TEST_FIELD_SIZE (EMRDELETEOBJECT, ihObject, 4)
1002 TEST_FIELD_ALIGN (EMRDELETEOBJECT, ihObject, 4)
1003 TEST_FIELD_OFFSET(EMRDELETEOBJECT, ihObject, 8)
1004 }
1005
1006 static void test_pack_EMRELLIPSE(void)
1007 {
1008 /* EMRELLIPSE */
1009 TEST_TYPE_SIZE (EMRELLIPSE, 24)
1010 TEST_TYPE_ALIGN (EMRELLIPSE, 4)
1011 TEST_FIELD_SIZE (EMRELLIPSE, emr, 8)
1012 TEST_FIELD_ALIGN (EMRELLIPSE, emr, 4)
1013 TEST_FIELD_OFFSET(EMRELLIPSE, emr, 0)
1014 TEST_FIELD_SIZE (EMRELLIPSE, rclBox, 16)
1015 TEST_FIELD_ALIGN (EMRELLIPSE, rclBox, 4)
1016 TEST_FIELD_OFFSET(EMRELLIPSE, rclBox, 8)
1017 }
1018
1019 static void test_pack_EMRENDPATH(void)
1020 {
1021 /* EMRENDPATH */
1022 TEST_TYPE_SIZE (EMRENDPATH, 8)
1023 TEST_TYPE_ALIGN (EMRENDPATH, 4)
1024 TEST_FIELD_SIZE (EMRENDPATH, emr, 8)
1025 TEST_FIELD_ALIGN (EMRENDPATH, emr, 4)
1026 TEST_FIELD_OFFSET(EMRENDPATH, emr, 0)
1027 }
1028
1029 static void test_pack_EMREOF(void)
1030 {
1031 /* EMREOF */
1032 TEST_TYPE_SIZE (EMREOF, 20)
1033 TEST_TYPE_ALIGN (EMREOF, 4)
1034 TEST_FIELD_SIZE (EMREOF, emr, 8)
1035 TEST_FIELD_ALIGN (EMREOF, emr, 4)
1036 TEST_FIELD_OFFSET(EMREOF, emr, 0)
1037 TEST_FIELD_SIZE (EMREOF, nPalEntries, 4)
1038 TEST_FIELD_ALIGN (EMREOF, nPalEntries, 4)
1039 TEST_FIELD_OFFSET(EMREOF, nPalEntries, 8)
1040 TEST_FIELD_SIZE (EMREOF, offPalEntries, 4)
1041 TEST_FIELD_ALIGN (EMREOF, offPalEntries, 4)
1042 TEST_FIELD_OFFSET(EMREOF, offPalEntries, 12)
1043 TEST_FIELD_SIZE (EMREOF, nSizeLast, 4)
1044 TEST_FIELD_ALIGN (EMREOF, nSizeLast, 4)
1045 TEST_FIELD_OFFSET(EMREOF, nSizeLast, 16)
1046 }
1047
1048 static void test_pack_EMREXCLUDECLIPRECT(void)
1049 {
1050 /* EMREXCLUDECLIPRECT */
1051 TEST_TYPE_SIZE (EMREXCLUDECLIPRECT, 24)
1052 TEST_TYPE_ALIGN (EMREXCLUDECLIPRECT, 4)
1053 TEST_FIELD_SIZE (EMREXCLUDECLIPRECT, emr, 8)
1054 TEST_FIELD_ALIGN (EMREXCLUDECLIPRECT, emr, 4)
1055 TEST_FIELD_OFFSET(EMREXCLUDECLIPRECT, emr, 0)
1056 TEST_FIELD_SIZE (EMREXCLUDECLIPRECT, rclClip, 16)
1057 TEST_FIELD_ALIGN (EMREXCLUDECLIPRECT, rclClip, 4)
1058 TEST_FIELD_OFFSET(EMREXCLUDECLIPRECT, rclClip, 8)
1059 }
1060
1061 static void test_pack_EMREXTCREATEFONTINDIRECTW(void)
1062 {
1063 /* EMREXTCREATEFONTINDIRECTW */
1064 TEST_TYPE_SIZE (EMREXTCREATEFONTINDIRECTW, 332)
1065 TEST_TYPE_ALIGN (EMREXTCREATEFONTINDIRECTW, 4)
1066 TEST_FIELD_SIZE (EMREXTCREATEFONTINDIRECTW, emr, 8)
1067 TEST_FIELD_ALIGN (EMREXTCREATEFONTINDIRECTW, emr, 4)
1068 TEST_FIELD_OFFSET(EMREXTCREATEFONTINDIRECTW, emr, 0)
1069 TEST_FIELD_SIZE (EMREXTCREATEFONTINDIRECTW, ihFont, 4)
1070 TEST_FIELD_ALIGN (EMREXTCREATEFONTINDIRECTW, ihFont, 4)
1071 TEST_FIELD_OFFSET(EMREXTCREATEFONTINDIRECTW, ihFont, 8)
1072 TEST_FIELD_SIZE (EMREXTCREATEFONTINDIRECTW, elfw, 320)
1073 TEST_FIELD_ALIGN (EMREXTCREATEFONTINDIRECTW, elfw, 4)
1074 TEST_FIELD_OFFSET(EMREXTCREATEFONTINDIRECTW, elfw, 12)
1075 }
1076
1077 static void test_pack_EMREXTCREATEPEN(void)
1078 {
1079 /* EMREXTCREATEPEN */
1080 TEST_TYPE_SIZE (EMREXTCREATEPEN, 64)
1081 TEST_TYPE_ALIGN (EMREXTCREATEPEN, 8)
1082 TEST_FIELD_SIZE (EMREXTCREATEPEN, emr, 8)
1083 TEST_FIELD_ALIGN (EMREXTCREATEPEN, emr, 4)
1084 TEST_FIELD_OFFSET(EMREXTCREATEPEN, emr, 0)
1085 TEST_FIELD_SIZE (EMREXTCREATEPEN, ihPen, 4)
1086 TEST_FIELD_ALIGN (EMREXTCREATEPEN, ihPen, 4)
1087 TEST_FIELD_OFFSET(EMREXTCREATEPEN, ihPen, 8)
1088 TEST_FIELD_SIZE (EMREXTCREATEPEN, offBmi, 4)
1089 TEST_FIELD_ALIGN (EMREXTCREATEPEN, offBmi, 4)
1090 TEST_FIELD_OFFSET(EMREXTCREATEPEN, offBmi, 12)
1091 TEST_FIELD_SIZE (EMREXTCREATEPEN, cbBmi, 4)
1092 TEST_FIELD_ALIGN (EMREXTCREATEPEN, cbBmi, 4)
1093 TEST_FIELD_OFFSET(EMREXTCREATEPEN, cbBmi, 16)
1094 TEST_FIELD_SIZE (EMREXTCREATEPEN, offBits, 4)
1095 TEST_FIELD_ALIGN (EMREXTCREATEPEN, offBits, 4)
1096 TEST_FIELD_OFFSET(EMREXTCREATEPEN, offBits, 20)
1097 TEST_FIELD_SIZE (EMREXTCREATEPEN, cbBits, 4)
1098 TEST_FIELD_ALIGN (EMREXTCREATEPEN, cbBits, 4)
1099 TEST_FIELD_OFFSET(EMREXTCREATEPEN, cbBits, 24)
1100 TEST_FIELD_SIZE (EMREXTCREATEPEN, elp, 32)
1101 TEST_FIELD_ALIGN (EMREXTCREATEPEN, elp, 8)
1102 TEST_FIELD_OFFSET(EMREXTCREATEPEN, elp, 32)
1103 }
1104
1105 static void test_pack_EMREXTFLOODFILL(void)
1106 {
1107 /* EMREXTFLOODFILL */
1108 TEST_TYPE_SIZE (EMREXTFLOODFILL, 24)
1109 TEST_TYPE_ALIGN (EMREXTFLOODFILL, 4)
1110 TEST_FIELD_SIZE (EMREXTFLOODFILL, emr, 8)
1111 TEST_FIELD_ALIGN (EMREXTFLOODFILL, emr, 4)
1112 TEST_FIELD_OFFSET(EMREXTFLOODFILL, emr, 0)
1113 TEST_FIELD_SIZE (EMREXTFLOODFILL, ptlStart, 8)
1114 TEST_FIELD_ALIGN (EMREXTFLOODFILL, ptlStart, 4)
1115 TEST_FIELD_OFFSET(EMREXTFLOODFILL, ptlStart, 8)
1116 TEST_FIELD_SIZE (EMREXTFLOODFILL, crColor, 4)
1117 TEST_FIELD_ALIGN (EMREXTFLOODFILL, crColor, 4)
1118 TEST_FIELD_OFFSET(EMREXTFLOODFILL, crColor, 16)
1119 TEST_FIELD_SIZE (EMREXTFLOODFILL, iMode, 4)
1120 TEST_FIELD_ALIGN (EMREXTFLOODFILL, iMode, 4)
1121 TEST_FIELD_OFFSET(EMREXTFLOODFILL, iMode, 20)
1122 }
1123
1124 static void test_pack_EMREXTSELECTCLIPRGN(void)
1125 {
1126 /* EMREXTSELECTCLIPRGN */
1127 TEST_TYPE_SIZE (EMREXTSELECTCLIPRGN, 20)
1128 TEST_TYPE_ALIGN (EMREXTSELECTCLIPRGN, 4)
1129 TEST_FIELD_SIZE (EMREXTSELECTCLIPRGN, emr, 8)
1130 TEST_FIELD_ALIGN (EMREXTSELECTCLIPRGN, emr, 4)
1131 TEST_FIELD_OFFSET(EMREXTSELECTCLIPRGN, emr, 0)
1132 TEST_FIELD_SIZE (EMREXTSELECTCLIPRGN, cbRgnData, 4)
1133 TEST_FIELD_ALIGN (EMREXTSELECTCLIPRGN, cbRgnData, 4)
1134 TEST_FIELD_OFFSET(EMREXTSELECTCLIPRGN, cbRgnData, 8)
1135 TEST_FIELD_SIZE (EMREXTSELECTCLIPRGN, iMode, 4)
1136 TEST_FIELD_ALIGN (EMREXTSELECTCLIPRGN, iMode, 4)
1137 TEST_FIELD_OFFSET(EMREXTSELECTCLIPRGN, iMode, 12)
1138 TEST_FIELD_SIZE (EMREXTSELECTCLIPRGN, RgnData, 1)
1139 TEST_FIELD_ALIGN (EMREXTSELECTCLIPRGN, RgnData, 1)
1140 TEST_FIELD_OFFSET(EMREXTSELECTCLIPRGN, RgnData, 16)
1141 }
1142
1143 static void test_pack_EMREXTTEXTOUTA(void)
1144 {
1145 /* EMREXTTEXTOUTA */
1146 TEST_TYPE_SIZE (EMREXTTEXTOUTA, 76)
1147 TEST_TYPE_ALIGN (EMREXTTEXTOUTA, 4)
1148 TEST_FIELD_SIZE (EMREXTTEXTOUTA, emr, 8)
1149 TEST_FIELD_ALIGN (EMREXTTEXTOUTA, emr, 4)
1150 TEST_FIELD_OFFSET(EMREXTTEXTOUTA, emr, 0)
1151 TEST_FIELD_SIZE (EMREXTTEXTOUTA, rclBounds, 16)
1152 TEST_FIELD_ALIGN (EMREXTTEXTOUTA, rclBounds, 4)
1153 TEST_FIELD_OFFSET(EMREXTTEXTOUTA, rclBounds, 8)
1154 TEST_FIELD_SIZE (EMREXTTEXTOUTA, iGraphicsMode, 4)
1155 TEST_FIELD_ALIGN (EMREXTTEXTOUTA, iGraphicsMode, 4)
1156 TEST_FIELD_OFFSET(EMREXTTEXTOUTA, iGraphicsMode, 24)
1157 TEST_FIELD_SIZE (EMREXTTEXTOUTA, exScale, 4)
1158 TEST_FIELD_ALIGN (EMREXTTEXTOUTA, exScale, 4)
1159 TEST_FIELD_OFFSET(EMREXTTEXTOUTA, exScale, 28)
1160 TEST_FIELD_SIZE (EMREXTTEXTOUTA, eyScale, 4)
1161 TEST_FIELD_ALIGN (EMREXTTEXTOUTA, eyScale, 4)
1162 TEST_FIELD_OFFSET(EMREXTTEXTOUTA, eyScale, 32)
1163 TEST_FIELD_SIZE (EMREXTTEXTOUTA, emrtext, 40)
1164 TEST_FIELD_ALIGN (EMREXTTEXTOUTA, emrtext, 4)
1165 TEST_FIELD_OFFSET(EMREXTTEXTOUTA, emrtext, 36)
1166 }
1167
1168 static void test_pack_EMREXTTEXTOUTW(void)
1169 {
1170 /* EMREXTTEXTOUTW */
1171 TEST_TYPE_SIZE (EMREXTTEXTOUTW, 76)
1172 TEST_TYPE_ALIGN (EMREXTTEXTOUTW, 4)
1173 TEST_FIELD_SIZE (EMREXTTEXTOUTW, emr, 8)
1174 TEST_FIELD_ALIGN (EMREXTTEXTOUTW, emr, 4)
1175 TEST_FIELD_OFFSET(EMREXTTEXTOUTW, emr, 0)
1176 TEST_FIELD_SIZE (EMREXTTEXTOUTW, rclBounds, 16)
1177 TEST_FIELD_ALIGN (EMREXTTEXTOUTW, rclBounds, 4)
1178 TEST_FIELD_OFFSET(EMREXTTEXTOUTW, rclBounds, 8)
1179 TEST_FIELD_SIZE (EMREXTTEXTOUTW, iGraphicsMode, 4)
1180 TEST_FIELD_ALIGN (EMREXTTEXTOUTW, iGraphicsMode, 4)
1181 TEST_FIELD_OFFSET(EMREXTTEXTOUTW, iGraphicsMode, 24)
1182 TEST_FIELD_SIZE (EMREXTTEXTOUTW, exScale, 4)
1183 TEST_FIELD_ALIGN (EMREXTTEXTOUTW, exScale, 4)
1184 TEST_FIELD_OFFSET(EMREXTTEXTOUTW, exScale, 28)
1185 TEST_FIELD_SIZE (EMREXTTEXTOUTW, eyScale, 4)
1186 TEST_FIELD_ALIGN (EMREXTTEXTOUTW, eyScale, 4)
1187 TEST_FIELD_OFFSET(EMREXTTEXTOUTW, eyScale, 32)
1188 TEST_FIELD_SIZE (EMREXTTEXTOUTW, emrtext, 40)
1189 TEST_FIELD_ALIGN (EMREXTTEXTOUTW, emrtext, 4)
1190 TEST_FIELD_OFFSET(EMREXTTEXTOUTW, emrtext, 36)
1191 }
1192
1193 static void test_pack_EMRFILLPATH(void)
1194 {
1195 /* EMRFILLPATH */
1196 TEST_TYPE_SIZE (EMRFILLPATH, 24)
1197 TEST_TYPE_ALIGN (EMRFILLPATH, 4)
1198 TEST_FIELD_SIZE (EMRFILLPATH, emr, 8)
1199 TEST_FIELD_ALIGN (EMRFILLPATH, emr, 4)
1200 TEST_FIELD_OFFSET(EMRFILLPATH, emr, 0)
1201 TEST_FIELD_SIZE (EMRFILLPATH, rclBounds, 16)
1202 TEST_FIELD_ALIGN (EMRFILLPATH, rclBounds, 4)
1203 TEST_FIELD_OFFSET(EMRFILLPATH, rclBounds, 8)
1204 }
1205
1206 static void test_pack_EMRFILLRGN(void)
1207 {
1208 /* EMRFILLRGN */
1209 TEST_TYPE_SIZE (EMRFILLRGN, 36)
1210 TEST_TYPE_ALIGN (EMRFILLRGN, 4)
1211 TEST_FIELD_SIZE (EMRFILLRGN, emr, 8)
1212 TEST_FIELD_ALIGN (EMRFILLRGN, emr, 4)
1213 TEST_FIELD_OFFSET(EMRFILLRGN, emr, 0)
1214 TEST_FIELD_SIZE (EMRFILLRGN, rclBounds, 16)
1215 TEST_FIELD_ALIGN (EMRFILLRGN, rclBounds, 4)
1216 TEST_FIELD_OFFSET(EMRFILLRGN, rclBounds, 8)
1217 TEST_FIELD_SIZE (EMRFILLRGN, cbRgnData, 4)
1218 TEST_FIELD_ALIGN (EMRFILLRGN, cbRgnData, 4)
1219 TEST_FIELD_OFFSET(EMRFILLRGN, cbRgnData, 24)
1220 TEST_FIELD_SIZE (EMRFILLRGN, ihBrush, 4)
1221 TEST_FIELD_ALIGN (EMRFILLRGN, ihBrush, 4)
1222 TEST_FIELD_OFFSET(EMRFILLRGN, ihBrush, 28)
1223 TEST_FIELD_SIZE (EMRFILLRGN, RgnData, 1)
1224 TEST_FIELD_ALIGN (EMRFILLRGN, RgnData, 1)
1225 TEST_FIELD_OFFSET(EMRFILLRGN, RgnData, 32)
1226 }
1227
1228 static void test_pack_EMRFLATTENPATH(void)
1229 {
1230 /* EMRFLATTENPATH */
1231 TEST_TYPE_SIZE (EMRFLATTENPATH, 8)
1232 TEST_TYPE_ALIGN (EMRFLATTENPATH, 4)
1233 TEST_FIELD_SIZE (EMRFLATTENPATH, emr, 8)
1234 TEST_FIELD_ALIGN (EMRFLATTENPATH, emr, 4)
1235 TEST_FIELD_OFFSET(EMRFLATTENPATH, emr, 0)
1236 }
1237
1238 static void test_pack_EMRFORMAT(void)
1239 {
1240 /* EMRFORMAT */
1241 TEST_TYPE_SIZE (EMRFORMAT, 16)
1242 TEST_TYPE_ALIGN (EMRFORMAT, 4)
1243 TEST_FIELD_SIZE (EMRFORMAT, dSignature, 4)
1244 TEST_FIELD_ALIGN (EMRFORMAT, dSignature, 4)
1245 TEST_FIELD_OFFSET(EMRFORMAT, dSignature, 0)
1246 TEST_FIELD_SIZE (EMRFORMAT, nVersion, 4)
1247 TEST_FIELD_ALIGN (EMRFORMAT, nVersion, 4)
1248 TEST_FIELD_OFFSET(EMRFORMAT, nVersion, 4)
1249 TEST_FIELD_SIZE (EMRFORMAT, cbData, 4)
1250 TEST_FIELD_ALIGN (EMRFORMAT, cbData, 4)
1251 TEST_FIELD_OFFSET(EMRFORMAT, cbData, 8)
1252 TEST_FIELD_SIZE (EMRFORMAT, offData, 4)
1253 TEST_FIELD_ALIGN (EMRFORMAT, offData, 4)
1254 TEST_FIELD_OFFSET(EMRFORMAT, offData, 12)
1255 }
1256
1257 static void test_pack_EMRFRAMERGN(void)
1258 {
1259 /* EMRFRAMERGN */
1260 TEST_TYPE_SIZE (EMRFRAMERGN, 44)
1261 TEST_TYPE_ALIGN (EMRFRAMERGN, 4)
1262 TEST_FIELD_SIZE (EMRFRAMERGN, emr, 8)
1263 TEST_FIELD_ALIGN (EMRFRAMERGN, emr, 4)
1264 TEST_FIELD_OFFSET(EMRFRAMERGN, emr, 0)
1265 TEST_FIELD_SIZE (EMRFRAMERGN, rclBounds, 16)
1266 TEST_FIELD_ALIGN (EMRFRAMERGN, rclBounds, 4)
1267 TEST_FIELD_OFFSET(EMRFRAMERGN, rclBounds, 8)
1268 TEST_FIELD_SIZE (EMRFRAMERGN, cbRgnData, 4)
1269 TEST_FIELD_ALIGN (EMRFRAMERGN, cbRgnData, 4)
1270 TEST_FIELD_OFFSET(EMRFRAMERGN, cbRgnData, 24)
1271 TEST_FIELD_SIZE (EMRFRAMERGN, ihBrush, 4)
1272 TEST_FIELD_ALIGN (EMRFRAMERGN, ihBrush, 4)
1273 TEST_FIELD_OFFSET(EMRFRAMERGN, ihBrush, 28)
1274 TEST_FIELD_SIZE (EMRFRAMERGN, szlStroke, 8)
1275 TEST_FIELD_ALIGN (EMRFRAMERGN, szlStroke, 4)
1276 TEST_FIELD_OFFSET(EMRFRAMERGN, szlStroke, 32)
1277 TEST_FIELD_SIZE (EMRFRAMERGN, RgnData, 1)
1278 TEST_FIELD_ALIGN (EMRFRAMERGN, RgnData, 1)
1279 TEST_FIELD_OFFSET(EMRFRAMERGN, RgnData, 40)
1280 }
1281
1282 static void test_pack_EMRGDICOMMENT(void)
1283 {
1284 /* EMRGDICOMMENT */
1285 TEST_TYPE_SIZE (EMRGDICOMMENT, 16)
1286 TEST_TYPE_ALIGN (EMRGDICOMMENT, 4)
1287 TEST_FIELD_SIZE (EMRGDICOMMENT, emr, 8)
1288 TEST_FIELD_ALIGN (EMRGDICOMMENT, emr, 4)
1289 TEST_FIELD_OFFSET(EMRGDICOMMENT, emr, 0)
1290 TEST_FIELD_SIZE (EMRGDICOMMENT, cbData, 4)
1291 TEST_FIELD_ALIGN (EMRGDICOMMENT, cbData, 4)
1292 TEST_FIELD_OFFSET(EMRGDICOMMENT, cbData, 8)
1293 TEST_FIELD_SIZE (EMRGDICOMMENT, Data, 1)
1294 TEST_FIELD_ALIGN (EMRGDICOMMENT, Data, 1)
1295 TEST_FIELD_OFFSET(EMRGDICOMMENT, Data, 12)
1296 }
1297
1298 static void test_pack_EMRGLSBOUNDEDRECORD(void)
1299 {
1300 /* EMRGLSBOUNDEDRECORD */
1301 TEST_TYPE_SIZE (EMRGLSBOUNDEDRECORD, 32)
1302 TEST_TYPE_ALIGN (EMRGLSBOUNDEDRECORD, 4)
1303 TEST_FIELD_SIZE (EMRGLSBOUNDEDRECORD, emr, 8)
1304 TEST_FIELD_ALIGN (EMRGLSBOUNDEDRECORD, emr, 4)
1305 TEST_FIELD_OFFSET(EMRGLSBOUNDEDRECORD, emr, 0)
1306 TEST_FIELD_SIZE (EMRGLSBOUNDEDRECORD, rclBounds, 16)
1307 TEST_FIELD_ALIGN (EMRGLSBOUNDEDRECORD, rclBounds, 4)
1308 TEST_FIELD_OFFSET(EMRGLSBOUNDEDRECORD, rclBounds, 8)
1309 TEST_FIELD_SIZE (EMRGLSBOUNDEDRECORD, cbData, 4)
1310 TEST_FIELD_ALIGN (EMRGLSBOUNDEDRECORD, cbData, 4)
1311 TEST_FIELD_OFFSET(EMRGLSBOUNDEDRECORD, cbData, 24)
1312 TEST_FIELD_SIZE (EMRGLSBOUNDEDRECORD, Data, 1)
1313 TEST_FIELD_ALIGN (EMRGLSBOUNDEDRECORD, Data, 1)
1314 TEST_FIELD_OFFSET(EMRGLSBOUNDEDRECORD, Data, 28)
1315 }
1316
1317 static void test_pack_EMRGLSRECORD(void)
1318 {
1319 /* EMRGLSRECORD */
1320 TEST_TYPE_SIZE (EMRGLSRECORD, 16)
1321 TEST_TYPE_ALIGN (EMRGLSRECORD, 4)
1322 TEST_FIELD_SIZE (EMRGLSRECORD, emr, 8)
1323 TEST_FIELD_ALIGN (EMRGLSRECORD, emr, 4)
1324 TEST_FIELD_OFFSET(EMRGLSRECORD, emr, 0)
1325 TEST_FIELD_SIZE (EMRGLSRECORD, cbData, 4)
1326 TEST_FIELD_ALIGN (EMRGLSRECORD, cbData, 4)
1327 TEST_FIELD_OFFSET(EMRGLSRECORD, cbData, 8)
1328 TEST_FIELD_SIZE (EMRGLSRECORD, Data, 1)
1329 TEST_FIELD_ALIGN (EMRGLSRECORD, Data, 1)
1330 TEST_FIELD_OFFSET(EMRGLSRECORD, Data, 12)
1331 }
1332
1333 static void test_pack_EMRINTERSECTCLIPRECT(void)
1334 {
1335 /* EMRINTERSECTCLIPRECT */
1336 TEST_TYPE_SIZE (EMRINTERSECTCLIPRECT, 24)
1337 TEST_TYPE_ALIGN (EMRINTERSECTCLIPRECT, 4)
1338 TEST_FIELD_SIZE (EMRINTERSECTCLIPRECT, emr, 8)
1339 TEST_FIELD_ALIGN (EMRINTERSECTCLIPRECT, emr, 4)
1340 TEST_FIELD_OFFSET(EMRINTERSECTCLIPRECT, emr, 0)
1341 TEST_FIELD_SIZE (EMRINTERSECTCLIPRECT, rclClip, 16)
1342 TEST_FIELD_ALIGN (EMRINTERSECTCLIPRECT, rclClip, 4)
1343 TEST_FIELD_OFFSET(EMRINTERSECTCLIPRECT, rclClip, 8)
1344 }
1345
1346 static void test_pack_EMRINVERTRGN(void)
1347 {
1348 /* EMRINVERTRGN */
1349 TEST_TYPE_SIZE (EMRINVERTRGN, 32)
1350 TEST_TYPE_ALIGN (EMRINVERTRGN, 4)
1351 TEST_FIELD_SIZE (EMRINVERTRGN, emr, 8)
1352 TEST_FIELD_ALIGN (EMRINVERTRGN, emr, 4)
1353 TEST_FIELD_OFFSET(EMRINVERTRGN, emr, 0)
1354 TEST_FIELD_SIZE (EMRINVERTRGN, rclBounds, 16)
1355 TEST_FIELD_ALIGN (EMRINVERTRGN, rclBounds, 4)
1356 TEST_FIELD_OFFSET(EMRINVERTRGN, rclBounds, 8)
1357 TEST_FIELD_SIZE (EMRINVERTRGN, cbRgnData, 4)
1358 TEST_FIELD_ALIGN (EMRINVERTRGN, cbRgnData, 4)
1359 TEST_FIELD_OFFSET(EMRINVERTRGN, cbRgnData, 24)
1360 TEST_FIELD_SIZE (EMRINVERTRGN, RgnData, 1)
1361 TEST_FIELD_ALIGN (EMRINVERTRGN, RgnData, 1)
1362 TEST_FIELD_OFFSET(EMRINVERTRGN, RgnData, 28)
1363 }
1364
1365 static void test_pack_EMRLINETO(void)
1366 {
1367 /* EMRLINETO */
1368 TEST_TYPE_SIZE (EMRLINETO, 16)
1369 TEST_TYPE_ALIGN (EMRLINETO, 4)
1370 TEST_FIELD_SIZE (EMRLINETO, emr, 8)
1371 TEST_FIELD_ALIGN (EMRLINETO, emr, 4)
1372 TEST_FIELD_OFFSET(EMRLINETO, emr, 0)
1373 TEST_FIELD_SIZE (EMRLINETO, ptl, 8)
1374 TEST_FIELD_ALIGN (EMRLINETO, ptl, 4)
1375 TEST_FIELD_OFFSET(EMRLINETO, ptl, 8)
1376 }
1377
1378 static void test_pack_EMRMASKBLT(void)
1379 {
1380 /* EMRMASKBLT */
1381 TEST_TYPE_SIZE (EMRMASKBLT, 128)
1382 TEST_TYPE_ALIGN (EMRMASKBLT, 4)
1383 TEST_FIELD_SIZE (EMRMASKBLT, emr, 8)
1384 TEST_FIELD_ALIGN (EMRMASKBLT, emr, 4)
1385 TEST_FIELD_OFFSET(EMRMASKBLT, emr, 0)
1386 TEST_FIELD_SIZE (EMRMASKBLT, rclBounds, 16)
1387 TEST_FIELD_ALIGN (EMRMASKBLT, rclBounds, 4)
1388 TEST_FIELD_OFFSET(EMRMASKBLT, rclBounds, 8)
1389 TEST_FIELD_SIZE (EMRMASKBLT, xDest, 4)
1390 TEST_FIELD_ALIGN (EMRMASKBLT, xDest, 4)
1391 TEST_FIELD_OFFSET(EMRMASKBLT, xDest, 24)
1392 TEST_FIELD_SIZE (EMRMASKBLT, yDest, 4)
1393 TEST_FIELD_ALIGN (EMRMASKBLT, yDest, 4)
1394 TEST_FIELD_OFFSET(EMRMASKBLT, yDest, 28)
1395 TEST_FIELD_SIZE (EMRMASKBLT, cxDest, 4)
1396 TEST_FIELD_ALIGN (EMRMASKBLT, cxDest, 4)
1397 TEST_FIELD_OFFSET(EMRMASKBLT, cxDest, 32)
1398 TEST_FIELD_SIZE (EMRMASKBLT, cyDest, 4)
1399 TEST_FIELD_ALIGN (EMRMASKBLT, cyDest, 4)
1400 TEST_FIELD_OFFSET(EMRMASKBLT, cyDest, 36)
1401 TEST_FIELD_SIZE (EMRMASKBLT, dwRop, 4)
1402 TEST_FIELD_ALIGN (EMRMASKBLT, dwRop, 4)
1403 TEST_FIELD_OFFSET(EMRMASKBLT, dwRop, 40)
1404 TEST_FIELD_SIZE (EMRMASKBLT, xSrc, 4)
1405 TEST_FIELD_ALIGN (EMRMASKBLT, xSrc, 4)
1406 TEST_FIELD_OFFSET(EMRMASKBLT, xSrc, 44)
1407 TEST_FIELD_SIZE (EMRMASKBLT, ySrc, 4)
1408 TEST_FIELD_ALIGN (EMRMASKBLT, ySrc, 4)
1409 TEST_FIELD_OFFSET(EMRMASKBLT, ySrc, 48)
1410 TEST_FIELD_SIZE (EMRMASKBLT, xformSrc, 24)
1411 TEST_FIELD_ALIGN (EMRMASKBLT, xformSrc, 4)
1412 TEST_FIELD_OFFSET(EMRMASKBLT, xformSrc, 52)
1413 TEST_FIELD_SIZE (EMRMASKBLT, crBkColorSrc, 4)
1414 TEST_FIELD_ALIGN (EMRMASKBLT, crBkColorSrc, 4)
1415 TEST_FIELD_OFFSET(EMRMASKBLT, crBkColorSrc, 76)
1416 TEST_FIELD_SIZE (EMRMASKBLT, iUsageSrc, 4)
1417 TEST_FIELD_ALIGN (EMRMASKBLT, iUsageSrc, 4)
1418 TEST_FIELD_OFFSET(EMRMASKBLT, iUsageSrc, 80)
1419 TEST_FIELD_SIZE (EMRMASKBLT, offBmiSrc, 4)
1420 TEST_FIELD_ALIGN (EMRMASKBLT, offBmiSrc, 4)
1421 TEST_FIELD_OFFSET(EMRMASKBLT, offBmiSrc, 84)
1422 TEST_FIELD_SIZE (EMRMASKBLT, cbBmiSrc, 4)
1423 TEST_FIELD_ALIGN (EMRMASKBLT, cbBmiSrc, 4)
1424 TEST_FIELD_OFFSET(EMRMASKBLT, cbBmiSrc, 88)
1425 TEST_FIELD_SIZE (EMRMASKBLT, offBitsSrc, 4)
1426 TEST_FIELD_ALIGN (EMRMASKBLT, offBitsSrc, 4)
1427 TEST_FIELD_OFFSET(EMRMASKBLT, offBitsSrc, 92)
1428 TEST_FIELD_SIZE (EMRMASKBLT, cbBitsSrc, 4)
1429 TEST_FIELD_ALIGN (EMRMASKBLT, cbBitsSrc, 4)
1430 TEST_FIELD_OFFSET(EMRMASKBLT, cbBitsSrc, 96)
1431 TEST_FIELD_SIZE (EMRMASKBLT, xMask, 4)
1432 TEST_FIELD_ALIGN (EMRMASKBLT, xMask, 4)
1433 TEST_FIELD_OFFSET(EMRMASKBLT, xMask, 100)
1434 TEST_FIELD_SIZE (EMRMASKBLT, yMask, 4)
1435 TEST_FIELD_ALIGN (EMRMASKBLT, yMask, 4)
1436 TEST_FIELD_OFFSET(EMRMASKBLT, yMask, 104)
1437 TEST_FIELD_SIZE (EMRMASKBLT, iUsageMask, 4)
1438 TEST_FIELD_ALIGN (EMRMASKBLT, iUsageMask, 4)
1439 TEST_FIELD_OFFSET(EMRMASKBLT, iUsageMask, 108)
1440 TEST_FIELD_SIZE (EMRMASKBLT, offBmiMask, 4)
1441 TEST_FIELD_ALIGN (EMRMASKBLT, offBmiMask, 4)
1442 TEST_FIELD_OFFSET(EMRMASKBLT, offBmiMask, 112)
1443 TEST_FIELD_SIZE (EMRMASKBLT, cbBmiMask, 4)
1444 TEST_FIELD_ALIGN (EMRMASKBLT, cbBmiMask, 4)
1445 TEST_FIELD_OFFSET(EMRMASKBLT, cbBmiMask, 116)
1446 TEST_FIELD_SIZE (EMRMASKBLT, offBitsMask, 4)
1447 TEST_FIELD_ALIGN (EMRMASKBLT, offBitsMask, 4)
1448 TEST_FIELD_OFFSET(EMRMASKBLT, offBitsMask, 120)
1449 TEST_FIELD_SIZE (EMRMASKBLT, cbBitsMask, 4)
1450 TEST_FIELD_ALIGN (EMRMASKBLT, cbBitsMask, 4)
1451 TEST_FIELD_OFFSET(EMRMASKBLT, cbBitsMask, 124)
1452 }
1453
1454 static void test_pack_EMRMODIFYWORLDTRANSFORM(void)
1455 {
1456 /* EMRMODIFYWORLDTRANSFORM */
1457 TEST_TYPE_SIZE (EMRMODIFYWORLDTRANSFORM, 36)
1458 TEST_TYPE_ALIGN (EMRMODIFYWORLDTRANSFORM, 4)
1459 TEST_FIELD_SIZE (EMRMODIFYWORLDTRANSFORM, emr, 8)
1460 TEST_FIELD_ALIGN (EMRMODIFYWORLDTRANSFORM, emr, 4)
1461 TEST_FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, emr, 0)
1462 TEST_FIELD_SIZE (EMRMODIFYWORLDTRANSFORM, xform, 24)
1463 TEST_FIELD_ALIGN (EMRMODIFYWORLDTRANSFORM, xform, 4)
1464 TEST_FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, xform, 8)
1465 TEST_FIELD_SIZE (EMRMODIFYWORLDTRANSFORM, iMode, 4)
1466 TEST_FIELD_ALIGN (EMRMODIFYWORLDTRANSFORM, iMode, 4)
1467 TEST_FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, iMode, 32)
1468 }
1469
1470 static void test_pack_EMRMOVETOEX(void)
1471 {
1472 /* EMRMOVETOEX */
1473 TEST_TYPE_SIZE (EMRMOVETOEX, 16)
1474 TEST_TYPE_ALIGN (EMRMOVETOEX, 4)
1475 TEST_FIELD_SIZE (EMRMOVETOEX, emr, 8)
1476 TEST_FIELD_ALIGN (EMRMOVETOEX, emr, 4)
1477 TEST_FIELD_OFFSET(EMRMOVETOEX, emr, 0)
1478 TEST_FIELD_SIZE (EMRMOVETOEX, ptl, 8)
1479 TEST_FIELD_ALIGN (EMRMOVETOEX, ptl, 4)
1480 TEST_FIELD_OFFSET(EMRMOVETOEX, ptl, 8)
1481 }
1482
1483 static void test_pack_EMROFFSETCLIPRGN(void)
1484 {
1485 /* EMROFFSETCLIPRGN */
1486 TEST_TYPE_SIZE (EMROFFSETCLIPRGN, 16)
1487 TEST_TYPE_ALIGN (EMROFFSETCLIPRGN, 4)
1488 TEST_FIELD_SIZE (EMROFFSETCLIPRGN, emr, 8)
1489 TEST_FIELD_ALIGN (EMROFFSETCLIPRGN, emr, 4)
1490 TEST_FIELD_OFFSET(EMROFFSETCLIPRGN, emr, 0)
1491 TEST_FIELD_SIZE (EMROFFSETCLIPRGN, ptlOffset, 8)
1492 TEST_FIELD_ALIGN (EMROFFSETCLIPRGN, ptlOffset, 4)
1493 TEST_FIELD_OFFSET(EMROFFSETCLIPRGN, ptlOffset, 8)
1494 }
1495
1496 static void test_pack_EMRPAINTRGN(void)
1497 {
1498 /* EMRPAINTRGN */
1499 TEST_TYPE_SIZE (EMRPAINTRGN, 32)
1500 TEST_TYPE_ALIGN (EMRPAINTRGN, 4)
1501 TEST_FIELD_SIZE (EMRPAINTRGN, emr, 8)
1502 TEST_FIELD_ALIGN (EMRPAINTRGN, emr, 4)
1503 TEST_FIELD_OFFSET(EMRPAINTRGN, emr, 0)
1504 TEST_FIELD_SIZE (EMRPAINTRGN, rclBounds, 16)
1505 TEST_FIELD_ALIGN (EMRPAINTRGN, rclBounds, 4)
1506 TEST_FIELD_OFFSET(EMRPAINTRGN, rclBounds, 8)
1507 TEST_FIELD_SIZE (EMRPAINTRGN, cbRgnData, 4)
1508 TEST_FIELD_ALIGN (EMRPAINTRGN, cbRgnData, 4)
1509 TEST_FIELD_OFFSET(EMRPAINTRGN, cbRgnData, 24)
1510 TEST_FIELD_SIZE (EMRPAINTRGN, RgnData, 1)
1511 TEST_FIELD_ALIGN (EMRPAINTRGN, RgnData, 1)
1512 TEST_FIELD_OFFSET(EMRPAINTRGN, RgnData, 28)
1513 }
1514
1515 static void test_pack_EMRPIE(void)
1516 {
1517 /* EMRPIE */
1518 TEST_TYPE_SIZE (EMRPIE, 40)
1519 TEST_TYPE_ALIGN (EMRPIE, 4)
1520 TEST_FIELD_SIZE (EMRPIE, emr, 8)
1521 TEST_FIELD_ALIGN (EMRPIE, emr, 4)
1522 TEST_FIELD_OFFSET(EMRPIE, emr, 0)
1523 TEST_FIELD_SIZE (EMRPIE, rclBox, 16)
1524 TEST_FIELD_ALIGN (EMRPIE, rclBox, 4)
1525 TEST_FIELD_OFFSET(EMRPIE, rclBox, 8)
1526 TEST_FIELD_SIZE (EMRPIE, ptlStart, 8)
1527 TEST_FIELD_ALIGN (EMRPIE, ptlStart, 4)
1528 TEST_FIELD_OFFSET(EMRPIE, ptlStart, 24)
1529 TEST_FIELD_SIZE (EMRPIE, ptlEnd, 8)
1530 TEST_FIELD_ALIGN (EMRPIE, ptlEnd, 4)
1531 TEST_FIELD_OFFSET(EMRPIE, ptlEnd, 32)
1532 }
1533
1534 static void test_pack_EMRPIXELFORMAT(void)
1535 {
1536 /* EMRPIXELFORMAT */
1537 TEST_TYPE_SIZE (EMRPIXELFORMAT, 48)
1538 TEST_TYPE_ALIGN (EMRPIXELFORMAT, 4)
1539 TEST_FIELD_SIZE (EMRPIXELFORMAT, emr, 8)
1540 TEST_FIELD_ALIGN (EMRPIXELFORMAT, emr, 4)
1541 TEST_FIELD_OFFSET(EMRPIXELFORMAT, emr, 0)
1542 TEST_FIELD_SIZE (EMRPIXELFORMAT, pfd, 40)
1543 TEST_FIELD_ALIGN (EMRPIXELFORMAT, pfd, 4)
1544 TEST_FIELD_OFFSET(EMRPIXELFORMAT, pfd, 8)
1545 }
1546
1547 static void test_pack_EMRPLGBLT(void)
1548 {
1549 /* EMRPLGBLT */
1550 TEST_TYPE_SIZE (EMRPLGBLT, 140)
1551 TEST_TYPE_ALIGN (EMRPLGBLT, 4)
1552 TEST_FIELD_SIZE (EMRPLGBLT, emr, 8)
1553 TEST_FIELD_ALIGN (EMRPLGBLT, emr, 4)
1554 TEST_FIELD_OFFSET(EMRPLGBLT, emr, 0)
1555 TEST_FIELD_SIZE (EMRPLGBLT, rclBounds, 16)
1556 TEST_FIELD_ALIGN (EMRPLGBLT, rclBounds, 4)
1557 TEST_FIELD_OFFSET(EMRPLGBLT, rclBounds, 8)
1558 TEST_FIELD_SIZE (EMRPLGBLT, aptlDest, 24)
1559 TEST_FIELD_ALIGN (EMRPLGBLT, aptlDest, 4)
1560 TEST_FIELD_OFFSET(EMRPLGBLT, aptlDest, 24)
1561 TEST_FIELD_SIZE (EMRPLGBLT, xSrc, 4)
1562 TEST_FIELD_ALIGN (EMRPLGBLT, xSrc, 4)
1563 TEST_FIELD_OFFSET(EMRPLGBLT, xSrc, 48)
1564 TEST_FIELD_SIZE (EMRPLGBLT, ySrc, 4)
1565 TEST_FIELD_ALIGN (EMRPLGBLT, ySrc, 4)
1566 TEST_FIELD_OFFSET(EMRPLGBLT, ySrc, 52)
1567 TEST_FIELD_SIZE (EMRPLGBLT, cxSrc, 4)
1568 TEST_FIELD_ALIGN (EMRPLGBLT, cxSrc, 4)
1569 TEST_FIELD_OFFSET(EMRPLGBLT, cxSrc, 56)
1570 TEST_FIELD_SIZE (EMRPLGBLT, cySrc, 4)
1571 TEST_FIELD_ALIGN (EMRPLGBLT, cySrc, 4)
1572 TEST_FIELD_OFFSET(EMRPLGBLT, cySrc, 60)
1573 TEST_FIELD_SIZE (EMRPLGBLT, xformSrc, 24)
1574 TEST_FIELD_ALIGN (EMRPLGBLT, xformSrc, 4)
1575 TEST_FIELD_OFFSET(EMRPLGBLT, xformSrc, 64)
1576 TEST_FIELD_SIZE (EMRPLGBLT, crBkColorSrc, 4)
1577 TEST_FIELD_ALIGN (EMRPLGBLT, crBkColorSrc, 4)
1578 TEST_FIELD_OFFSET(EMRPLGBLT, crBkColorSrc, 88)
1579 TEST_FIELD_SIZE (EMRPLGBLT, iUsageSrc, 4)
1580 TEST_FIELD_ALIGN (EMRPLGBLT, iUsageSrc, 4)
1581 TEST_FIELD_OFFSET(EMRPLGBLT, iUsageSrc, 92)
1582 TEST_FIELD_SIZE (EMRPLGBLT, offBmiSrc, 4)
1583 TEST_FIELD_ALIGN (EMRPLGBLT, offBmiSrc, 4)
1584 TEST_FIELD_OFFSET(EMRPLGBLT, offBmiSrc, 96)
1585 TEST_FIELD_SIZE (EMRPLGBLT, cbBmiSrc, 4)
1586 TEST_FIELD_ALIGN (EMRPLGBLT, cbBmiSrc, 4)
1587 TEST_FIELD_OFFSET(EMRPLGBLT, cbBmiSrc, 100)
1588 TEST_FIELD_SIZE (EMRPLGBLT, offBitsSrc, 4)
1589 TEST_FIELD_ALIGN (EMRPLGBLT, offBitsSrc, 4)
1590 TEST_FIELD_OFFSET(EMRPLGBLT, offBitsSrc, 104)
1591 TEST_FIELD_SIZE (EMRPLGBLT, cbBitsSrc, 4)
1592 TEST_FIELD_ALIGN (EMRPLGBLT, cbBitsSrc, 4)
1593 TEST_FIELD_OFFSET(EMRPLGBLT, cbBitsSrc, 108)
1594 TEST_FIELD_SIZE (EMRPLGBLT, xMask, 4)
1595 TEST_FIELD_ALIGN (EMRPLGBLT, xMask, 4)
1596 TEST_FIELD_OFFSET(EMRPLGBLT, xMask, 112)
1597 TEST_FIELD_SIZE (EMRPLGBLT, yMask, 4)
1598 TEST_FIELD_ALIGN (EMRPLGBLT, yMask, 4)
1599 TEST_FIELD_OFFSET(EMRPLGBLT, yMask, 116)
1600 TEST_FIELD_SIZE (EMRPLGBLT, iUsageMask, 4)
1601 TEST_FIELD_ALIGN (EMRPLGBLT, iUsageMask, 4)
1602 TEST_FIELD_OFFSET(EMRPLGBLT, iUsageMask, 120)
1603 TEST_FIELD_SIZE (EMRPLGBLT, offBmiMask, 4)
1604 TEST_FIELD_ALIGN (EMRPLGBLT, offBmiMask, 4)
1605 TEST_FIELD_OFFSET(EMRPLGBLT, offBmiMask, 124)
1606 TEST_FIELD_SIZE (EMRPLGBLT, cbBmiMask, 4)
1607 TEST_FIELD_ALIGN (EMRPLGBLT, cbBmiMask, 4)
1608 TEST_FIELD_OFFSET(EMRPLGBLT, cbBmiMask, 128)
1609 TEST_FIELD_SIZE (EMRPLGBLT, offBitsMask, 4)
1610 TEST_FIELD_ALIGN (EMRPLGBLT, offBitsMask, 4)
1611 TEST_FIELD_OFFSET(EMRPLGBLT, offBitsMask, 132)
1612 TEST_FIELD_SIZE (EMRPLGBLT, cbBitsMask, 4)
1613 TEST_FIELD_ALIGN (EMRPLGBLT, cbBitsMask, 4)
1614 TEST_FIELD_OFFSET(EMRPLGBLT, cbBitsMask, 136)
1615 }
1616
1617 static void test_pack_EMRPOLYBEZIER(void)
1618 {
1619 /* EMRPOLYBEZIER */
1620 TEST_TYPE_SIZE (EMRPOLYBEZIER, 36)
1621 TEST_TYPE_ALIGN (EMRPOLYBEZIER, 4)
1622 TEST_FIELD_SIZE (EMRPOLYBEZIER, emr, 8)
1623 TEST_FIELD_ALIGN (EMRPOLYBEZIER, emr, 4)
1624 TEST_FIELD_OFFSET(EMRPOLYBEZIER, emr, 0)
1625 TEST_FIELD_SIZE (EMRPOLYBEZIER, rclBounds, 16)
1626 TEST_FIELD_ALIGN (EMRPOLYBEZIER, rclBounds, 4)
1627 TEST_FIELD_OFFSET(EMRPOLYBEZIER, rclBounds, 8)
1628 TEST_FIELD_SIZE (EMRPOLYBEZIER, cptl, 4)
1629 TEST_FIELD_ALIGN (EMRPOLYBEZIER, cptl, 4)
1630 TEST_FIELD_OFFSET(EMRPOLYBEZIER, cptl, 24)
1631 TEST_FIELD_SIZE (EMRPOLYBEZIER, aptl, 8)
1632 TEST_FIELD_ALIGN (EMRPOLYBEZIER, aptl, 4)
1633 TEST_FIELD_OFFSET(EMRPOLYBEZIER, aptl, 28)
1634 }
1635
1636 static void test_pack_EMRPOLYBEZIER16(void)
1637 {
1638 /* EMRPOLYBEZIER16 */
1639 TEST_TYPE_SIZE (EMRPOLYBEZIER16, 32)
1640 TEST_TYPE_ALIGN (EMRPOLYBEZIER16, 4)
1641 TEST_FIELD_SIZE (EMRPOLYBEZIER16, emr, 8)
1642 TEST_FIELD_ALIGN (EMRPOLYBEZIER16, emr, 4)
1643 TEST_FIELD_OFFSET(EMRPOLYBEZIER16, emr, 0)
1644 TEST_FIELD_SIZE (EMRPOLYBEZIER16, rclBounds, 16)
1645 TEST_FIELD_ALIGN (EMRPOLYBEZIER16, rclBounds, 4)
1646 TEST_FIELD_OFFSET(EMRPOLYBEZIER16, rclBounds, 8)
1647 TEST_FIELD_SIZE (EMRPOLYBEZIER16, cpts, 4)
1648 TEST_FIELD_ALIGN (EMRPOLYBEZIER16, cpts, 4)
1649 TEST_FIELD_OFFSET(EMRPOLYBEZIER16, cpts, 24)
1650 TEST_FIELD_SIZE (EMRPOLYBEZIER16, apts, 4)
1651 TEST_FIELD_ALIGN (EMRPOLYBEZIER16, apts, 2)
1652 TEST_FIELD_OFFSET(EMRPOLYBEZIER16, apts, 28)
1653 }
1654
1655 static void test_pack_EMRPOLYBEZIERTO(void)
1656 {
1657 /* EMRPOLYBEZIERTO */
1658 TEST_TYPE_SIZE (EMRPOLYBEZIERTO, 36)
1659 TEST_TYPE_ALIGN (EMRPOLYBEZIERTO, 4)
1660 TEST_FIELD_SIZE (EMRPOLYBEZIERTO, emr, 8)
1661 TEST_FIELD_ALIGN (EMRPOLYBEZIERTO, emr, 4)
1662 TEST_FIELD_OFFSET(EMRPOLYBEZIERTO, emr, 0)
1663 TEST_FIELD_SIZE (EMRPOLYBEZIERTO, rclBounds, 16)
1664 TEST_FIELD_ALIGN (EMRPOLYBEZIERTO, rclBounds, 4)
1665 TEST_FIELD_OFFSET(EMRPOLYBEZIERTO, rclBounds, 8)
1666 TEST_FIELD_SIZE (EMRPOLYBEZIERTO, cptl, 4)
1667 TEST_FIELD_ALIGN (EMRPOLYBEZIERTO, cptl, 4)
1668 TEST_FIELD_OFFSET(EMRPOLYBEZIERTO, cptl, 24)
1669 TEST_FIELD_SIZE (EMRPOLYBEZIERTO, aptl, 8)
1670 TEST_FIELD_ALIGN (EMRPOLYBEZIERTO, aptl, 4)
1671 TEST_FIELD_OFFSET(EMRPOLYBEZIERTO, aptl, 28)
1672 }
1673
1674 static void test_pack_EMRPOLYBEZIERTO16(void)
1675 {
1676 /* EMRPOLYBEZIERTO16 */
1677 TEST_TYPE_SIZE (EMRPOLYBEZIERTO16, 32)
1678 TEST_TYPE_ALIGN (EMRPOLYBEZIERTO16, 4)
1679 TEST_FIELD_SIZE (EMRPOLYBEZIERTO16, emr, 8)
1680 TEST_FIELD_ALIGN (EMRPOLYBEZIERTO16, emr, 4)
1681 TEST_FIELD_OFFSET(EMRPOLYBEZIERTO16, emr, 0)
1682 TEST_FIELD_SIZE (EMRPOLYBEZIERTO16, rclBounds, 16)
1683 TEST_FIELD_ALIGN (EMRPOLYBEZIERTO16, rclBounds, 4)
1684 TEST_FIELD_OFFSET(EMRPOLYBEZIERTO16, rclBounds, 8)
1685 TEST_FIELD_SIZE (EMRPOLYBEZIERTO16, cpts, 4)
1686 TEST_FIELD_ALIGN (EMRPOLYBEZIERTO16, cpts, 4)
1687 TEST_FIELD_OFFSET(EMRPOLYBEZIERTO16, cpts, 24)
1688 TEST_FIELD_SIZE (EMRPOLYBEZIERTO16, apts, 4)
1689 TEST_FIELD_ALIGN (EMRPOLYBEZIERTO16, apts, 2)
1690 TEST_FIELD_OFFSET(EMRPOLYBEZIERTO16, apts, 28)
1691 }
1692
1693 static void test_pack_EMRPOLYDRAW(void)
1694 {
1695 /* EMRPOLYDRAW */
1696 TEST_TYPE_SIZE (EMRPOLYDRAW, 40)
1697 TEST_TYPE_ALIGN (EMRPOLYDRAW, 4)
1698 TEST_FIELD_SIZE (EMRPOLYDRAW, emr, 8)
1699 TEST_FIELD_ALIGN (EMRPOLYDRAW, emr, 4)
1700 TEST_FIELD_OFFSET(EMRPOLYDRAW, emr, 0)
1701 TEST_FIELD_SIZE (EMRPOLYDRAW, rclBounds, 16)
1702 TEST_FIELD_ALIGN (EMRPOLYDRAW, rclBounds, 4)
1703 TEST_FIELD_OFFSET(EMRPOLYDRAW, rclBounds, 8)
1704 TEST_FIELD_SIZE (EMRPOLYDRAW, cptl, 4)
1705 TEST_FIELD_ALIGN (EMRPOLYDRAW, cptl, 4)
1706 TEST_FIELD_OFFSET(EMRPOLYDRAW, cptl, 24)
1707 TEST_FIELD_SIZE (EMRPOLYDRAW, aptl, 8)
1708 TEST_FIELD_ALIGN (EMRPOLYDRAW, aptl, 4)
1709 TEST_FIELD_OFFSET(EMRPOLYDRAW, aptl, 28)
1710 TEST_FIELD_SIZE (EMRPOLYDRAW, abTypes, 1)
1711 TEST_FIELD_ALIGN (EMRPOLYDRAW, abTypes, 1)
1712 TEST_FIELD_OFFSET(EMRPOLYDRAW, abTypes, 36)
1713 }
1714
1715 static void test_pack_EMRPOLYDRAW16(void)
1716 {
1717 /* EMRPOLYDRAW16 */
1718 TEST_TYPE_SIZE (EMRPOLYDRAW16, 36)
1719 TEST_TYPE_ALIGN (EMRPOLYDRAW16, 4)
1720 TEST_FIELD_SIZE (EMRPOLYDRAW16, emr, 8)
1721 TEST_FIELD_ALIGN (EMRPOLYDRAW16, emr, 4)
1722 TEST_FIELD_OFFSET(EMRPOLYDRAW16, emr, 0)
1723 TEST_FIELD_SIZE (EMRPOLYDRAW16, rclBounds, 16)
1724 TEST_FIELD_ALIGN (EMRPOLYDRAW16, rclBounds, 4)
1725 TEST_FIELD_OFFSET(EMRPOLYDRAW16, rclBounds, 8)
1726 TEST_FIELD_SIZE (EMRPOLYDRAW16, cpts, 4)
1727 TEST_FIELD_ALIGN (EMRPOLYDRAW16, cpts, 4)
1728 TEST_FIELD_OFFSET(EMRPOLYDRAW16, cpts, 24)
1729 TEST_FIELD_SIZE (EMRPOLYDRAW16, apts, 4)
1730 TEST_FIELD_ALIGN (EMRPOLYDRAW16, apts, 2)
1731 TEST_FIELD_OFFSET(EMRPOLYDRAW16, apts, 28)
1732 TEST_FIELD_SIZE (EMRPOLYDRAW16, abTypes, 1)
1733 TEST_FIELD_ALIGN (EMRPOLYDRAW16, abTypes, 1)
1734 TEST_FIELD_OFFSET(EMRPOLYDRAW16, abTypes, 32)
1735 }
1736
1737 static void test_pack_EMRPOLYGON(void)
1738 {
1739 /* EMRPOLYGON */
1740 TEST_TYPE_SIZE (EMRPOLYGON, 36)
1741 TEST_TYPE_ALIGN (EMRPOLYGON, 4)
1742 TEST_FIELD_SIZE (EMRPOLYGON, emr, 8)
1743 TEST_FIELD_ALIGN (EMRPOLYGON, emr, 4)
1744 TEST_FIELD_OFFSET(EMRPOLYGON, emr, 0)
1745 TEST_FIELD_SIZE (EMRPOLYGON, rclBounds, 16)
1746 TEST_FIELD_ALIGN (EMRPOLYGON, rclBounds, 4)
1747 TEST_FIELD_OFFSET(EMRPOLYGON, rclBounds, 8)
1748 TEST_FIELD_SIZE (EMRPOLYGON, cptl, 4)
1749 TEST_FIELD_ALIGN (EMRPOLYGON, cptl, 4)
1750 TEST_FIELD_OFFSET(EMRPOLYGON, cptl, 24)
1751 TEST_FIELD_SIZE (EMRPOLYGON, aptl, 8)
1752 TEST_FIELD_ALIGN (EMRPOLYGON, aptl, 4)
1753 TEST_FIELD_OFFSET(EMRPOLYGON, aptl, 28)
1754 }
1755
1756 static void test_pack_EMRPOLYGON16(void)
1757 {
1758 /* EMRPOLYGON16 */
1759 TEST_TYPE_SIZE (EMRPOLYGON16, 32)
1760 TEST_TYPE_ALIGN (EMRPOLYGON16, 4)
1761 TEST_FIELD_SIZE (EMRPOLYGON16, emr, 8)
1762 TEST_FIELD_ALIGN (EMRPOLYGON16, emr, 4)
1763 TEST_FIELD_OFFSET(EMRPOLYGON16, emr, 0)
1764 TEST_FIELD_SIZE (EMRPOLYGON16, rclBounds, 16)
1765 TEST_FIELD_ALIGN (EMRPOLYGON16, rclBounds, 4)
1766 TEST_FIELD_OFFSET(EMRPOLYGON16, rclBounds, 8)
1767 TEST_FIELD_SIZE (EMRPOLYGON16, cpts, 4)
1768 TEST_FIELD_ALIGN (EMRPOLYGON16, cpts, 4)
1769 TEST_FIELD_OFFSET(EMRPOLYGON16, cpts, 24)
1770 TEST_FIELD_SIZE (EMRPOLYGON16, apts, 4)
1771 TEST_FIELD_ALIGN (EMRPOLYGON16, apts, 2)
1772 TEST_FIELD_OFFSET(EMRPOLYGON16, apts, 28)
1773 }
1774
1775 static void test_pack_EMRPOLYLINE(void)
1776 {
1777 /* EMRPOLYLINE */
1778 TEST_TYPE_SIZE (EMRPOLYLINE, 36)
1779 TEST_TYPE_ALIGN (EMRPOLYLINE, 4)
1780 TEST_FIELD_SIZE (EMRPOLYLINE, emr, 8)
1781 TEST_FIELD_ALIGN (EMRPOLYLINE, emr, 4)
1782 TEST_FIELD_OFFSET(EMRPOLYLINE, emr, 0)
1783 TEST_FIELD_SIZE (EMRPOLYLINE, rclBounds, 16)
1784 TEST_FIELD_ALIGN (EMRPOLYLINE, rclBounds, 4)
1785 TEST_FIELD_OFFSET(EMRPOLYLINE, rclBounds, 8)
1786 TEST_FIELD_SIZE (EMRPOLYLINE, cptl, 4)
1787 TEST_FIELD_ALIGN (EMRPOLYLINE, cptl, 4)
1788 TEST_FIELD_OFFSET(EMRPOLYLINE, cptl, 24)
1789 TEST_FIELD_SIZE (EMRPOLYLINE, aptl, 8)
1790 TEST_FIELD_ALIGN (EMRPOLYLINE, aptl, 4)
1791 TEST_FIELD_OFFSET(EMRPOLYLINE, aptl, 28)
1792 }
1793
1794 static void test_pack_EMRPOLYLINE16(void)
1795 {
1796 /* EMRPOLYLINE16 */
1797 TEST_TYPE_SIZE (EMRPOLYLINE16, 32)
1798 TEST_TYPE_ALIGN (EMRPOLYLINE16, 4)
1799 TEST_FIELD_SIZE (EMRPOLYLINE16, emr, 8)
1800 TEST_FIELD_ALIGN (EMRPOLYLINE16, emr, 4)
1801 TEST_FIELD_OFFSET(EMRPOLYLINE16, emr, 0)
1802 TEST_FIELD_SIZE (EMRPOLYLINE16, rclBounds, 16)
1803 TEST_FIELD_ALIGN (EMRPOLYLINE16, rclBounds, 4)
1804 TEST_FIELD_OFFSET(EMRPOLYLINE16, rclBounds, 8)
1805 TEST_FIELD_SIZE (EMRPOLYLINE16, cpts, 4)
1806 TEST_FIELD_ALIGN (EMRPOLYLINE16, cpts, 4)
1807 TEST_FIELD_OFFSET(EMRPOLYLINE16, cpts, 24)
1808 TEST_FIELD_SIZE (EMRPOLYLINE16, apts, 4)
1809 TEST_FIELD_ALIGN (EMRPOLYLINE16, apts, 2)
1810 TEST_FIELD_OFFSET(EMRPOLYLINE16, apts, 28)
1811 }
1812
1813 static void test_pack_EMRPOLYLINETO(void)
1814 {
1815 /* EMRPOLYLINETO */
1816 TEST_TYPE_SIZE (EMRPOLYLINETO, 36)
1817 TEST_TYPE_ALIGN (EMRPOLYLINETO, 4)
1818 TEST_FIELD_SIZE (EMRPOLYLINETO, emr, 8)
1819 TEST_FIELD_ALIGN (EMRPOLYLINETO, emr, 4)
1820 TEST_FIELD_OFFSET(EMRPOLYLINETO, emr, 0)
1821 TEST_FIELD_SIZE (EMRPOLYLINETO, rclBounds, 16)
1822 TEST_FIELD_ALIGN (EMRPOLYLINETO, rclBounds, 4)
1823 TEST_FIELD_OFFSET(EMRPOLYLINETO, rclBounds, 8)
1824 TEST_FIELD_SIZE (EMRPOLYLINETO, cptl, 4)
1825 TEST_FIELD_ALIGN (EMRPOLYLINETO, cptl, 4)
1826 TEST_FIELD_OFFSET(EMRPOLYLINETO, cptl, 24)
1827 TEST_FIELD_SIZE (EMRPOLYLINETO, aptl, 8)
1828 TEST_FIELD_ALIGN (EMRPOLYLINETO, aptl, 4)
1829 TEST_FIELD_OFFSET(EMRPOLYLINETO, aptl, 28)
1830 }
1831
1832 static void test_pack_EMRPOLYLINETO16(void)
1833 {
1834 /* EMRPOLYLINETO16 */
1835 TEST_TYPE_SIZE (EMRPOLYLINETO16, 32)
1836 TEST_TYPE_ALIGN (EMRPOLYLINETO16, 4)
1837 TEST_FIELD_SIZE (EMRPOLYLINETO16, emr, 8)
1838 TEST_FIELD_ALIGN (EMRPOLYLINETO16, emr, 4)
1839 TEST_FIELD_OFFSET(EMRPOLYLINETO16, emr, 0)
1840 TEST_FIELD_SIZE (EMRPOLYLINETO16, rclBounds, 16)
1841 TEST_FIELD_ALIGN (EMRPOLYLINETO16, rclBounds, 4)
1842 TEST_FIELD_OFFSET(EMRPOLYLINETO16, rclBounds, 8)
1843 TEST_FIELD_SIZE (EMRPOLYLINETO16, cpts, 4)
1844 TEST_FIELD_ALIGN (EMRPOLYLINETO16, cpts, 4)
1845 TEST_FIELD_OFFSET(EMRPOLYLINETO16, cpts, 24)
1846 TEST_FIELD_SIZE (EMRPOLYLINETO16, apts, 4)
1847 TEST_FIELD_ALIGN (EMRPOLYLINETO16, apts, 2)
1848 TEST_FIELD_OFFSET(EMRPOLYLINETO16, apts, 28)
1849 }
1850
1851 static void test_pack_EMRPOLYPOLYGON(void)
1852 {
1853 /* EMRPOLYPOLYGON */
1854 TEST_TYPE_SIZE (EMRPOLYPOLYGON, 44)
1855 TEST_TYPE_ALIGN (EMRPOLYPOLYGON, 4)
1856 TEST_FIELD_SIZE (EMRPOLYPOLYGON, emr, 8)
1857 TEST_FIELD_ALIGN (EMRPOLYPOLYGON, emr, 4)
1858 TEST_FIELD_OFFSET(EMRPOLYPOLYGON, emr, 0)
1859 TEST_FIELD_SIZE (EMRPOLYPOLYGON, rclBounds, 16)
1860 TEST_FIELD_ALIGN (EMRPOLYPOLYGON, rclBounds, 4)
1861 TEST_FIELD_OFFSET(EMRPOLYPOLYGON, rclBounds, 8)
1862 TEST_FIELD_SIZE (EMRPOLYPOLYGON, nPolys, 4)
1863 TEST_FIELD_ALIGN (EMRPOLYPOLYGON, nPolys, 4)
1864 TEST_FIELD_OFFSET(EMRPOLYPOLYGON, nPolys, 24)
1865 TEST_FIELD_SIZE (EMRPOLYPOLYGON, cptl, 4)
1866 TEST_FIELD_ALIGN (EMRPOLYPOLYGON, cptl, 4)
1867 TEST_FIELD_OFFSET(EMRPOLYPOLYGON, cptl, 28)
1868 TEST_FIELD_SIZE (EMRPOLYPOLYGON, aPolyCounts, 4)
1869 TEST_FIELD_ALIGN (EMRPOLYPOLYGON, aPolyCounts, 4)
1870 TEST_FIELD_OFFSET(EMRPOLYPOLYGON, aPolyCounts, 32)
1871 TEST_FIELD_SIZE (EMRPOLYPOLYGON, aptl, 8)
1872 TEST_FIELD_ALIGN (EMRPOLYPOLYGON, aptl, 4)
1873 TEST_FIELD_OFFSET(EMRPOLYPOLYGON, aptl, 36)
1874 }
1875
1876 static void test_pack_EMRPOLYPOLYGON16(void)
1877 {
1878 /* EMRPOLYPOLYGON16 */
1879 TEST_TYPE_SIZE (EMRPOLYPOLYGON16, 40)
1880 TEST_TYPE_ALIGN (EMRPOLYPOLYGON16, 4)
1881 TEST_FIELD_SIZE (EMRPOLYPOLYGON16, emr, 8)
1882 TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, emr, 4)
1883 TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, emr, 0)
1884 TEST_FIELD_SIZE (EMRPOLYPOLYGON16, rclBounds, 16)
1885 TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, rclBounds, 4)
1886 TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, rclBounds, 8)
1887 TEST_FIELD_SIZE (EMRPOLYPOLYGON16, nPolys, 4)
1888 TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, nPolys, 4)
1889 TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, nPolys, 24)
1890 TEST_FIELD_SIZE (EMRPOLYPOLYGON16, cpts, 4)
1891 TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, cpts, 4)
1892 TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, cpts, 28)
1893 TEST_FIELD_SIZE (EMRPOLYPOLYGON16, aPolyCounts, 4)
1894 TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, aPolyCounts, 4)
1895 TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, aPolyCounts, 32)
1896 TEST_FIELD_SIZE (EMRPOLYPOLYGON16, apts, 4)
1897 TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, apts, 2)
1898 TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, apts, 36)
1899 }
1900
1901 static void test_pack_EMRPOLYPOLYLINE(void)
1902 {
1903 /* EMRPOLYPOLYLINE */
1904 TEST_TYPE_SIZE (EMRPOLYPOLYLINE, 44)
1905 TEST_TYPE_ALIGN (EMRPOLYPOLYLINE, 4)
1906 TEST_FIELD_SIZE (EMRPOLYPOLYLINE, emr, 8)
1907 TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, emr, 4)
1908 TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, emr, 0)
1909 TEST_FIELD_SIZE (EMRPOLYPOLYLINE, rclBounds, 16)
1910 TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, rclBounds, 4)
1911 TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, rclBounds, 8)
1912 TEST_FIELD_SIZE (EMRPOLYPOLYLINE, nPolys, 4)
1913 TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, nPolys, 4)
1914 TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, nPolys, 24)
1915 TEST_FIELD_SIZE (EMRPOLYPOLYLINE, cptl, 4)
1916 TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, cptl, 4)
1917 TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, cptl, 28)
1918 TEST_FIELD_SIZE (EMRPOLYPOLYLINE, aPolyCounts, 4)
1919 TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, aPolyCounts, 4)
1920 TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, aPolyCounts, 32)
1921 TEST_FIELD_SIZE (EMRPOLYPOLYLINE, aptl, 8)
1922 TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, aptl, 4)
1923 TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, aptl, 36)
1924 }
1925
1926 static void test_pack_EMRPOLYPOLYLINE16(void)
1927 {
1928 /* EMRPOLYPOLYLINE16 */
1929 TEST_TYPE_SIZE (EMRPOLYPOLYLINE16, 40)
1930 TEST_TYPE_ALIGN (EMRPOLYPOLYLINE16, 4)
1931 TEST_FIELD_SIZE (EMRPOLYPOLYLINE16, emr, 8)
1932 TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, emr, 4)
1933 TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, emr, 0)
1934 TEST_FIELD_SIZE (EMRPOLYPOLYLINE16, rclBounds, 16)
1935 TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, rclBounds, 4)
1936 TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, rclBounds, 8)
1937 TEST_FIELD_SIZE (EMRPOLYPOLYLINE16, nPolys, 4)
1938 TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, nPolys, 4)
1939 TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, nPolys, 24)
1940 TEST_FIELD_SIZE (EMRPOLYPOLYLINE16, cpts, 4)
1941 TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, cpts, 4)
1942 TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, cpts, 28)
1943 TEST_FIELD_SIZE (EMRPOLYPOLYLINE16, aPolyCounts, 4)
1944 TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, aPolyCounts, 4)
1945 TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, aPolyCounts, 32)
1946 TEST_FIELD_SIZE (EMRPOLYPOLYLINE16, apts, 4)
1947 TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, apts, 2)
1948 TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, apts, 36)
1949 }
1950
1951 static void test_pack_EMRPOLYTEXTOUTA(void)
1952 {
1953 /* EMRPOLYTEXTOUTA */
1954 TEST_TYPE_SIZE (EMRPOLYTEXTOUTA, 80)
1955 TEST_TYPE_ALIGN (EMRPOLYTEXTOUTA, 4)
1956 TEST_FIELD_SIZE (EMRPOLYTEXTOUTA, emr, 8)
1957 TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, emr, 4)
1958 TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, emr, 0)
1959 TEST_FIELD_SIZE (EMRPOLYTEXTOUTA, rclBounds, 16)
1960 TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, rclBounds, 4)
1961 TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, rclBounds, 8)
1962 TEST_FIELD_SIZE (EMRPOLYTEXTOUTA, iGraphicsMode, 4)
1963 TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, iGraphicsMode, 4)
1964 TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, iGraphicsMode, 24)
1965 TEST_FIELD_SIZE (EMRPOLYTEXTOUTA, exScale, 4)
1966 TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, exScale, 4)
1967 TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, exScale, 28)
1968 TEST_FIELD_SIZE (EMRPOLYTEXTOUTA, eyScale, 4)
1969 TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, eyScale, 4)
1970 TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, eyScale, 32)
1971 TEST_FIELD_SIZE (EMRPOLYTEXTOUTA, cStrings, 4)
1972 TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, cStrings, 4)
1973 TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, cStrings, 36)
1974 TEST_FIELD_SIZE (EMRPOLYTEXTOUTA, aemrtext, 40)
1975 TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, aemrtext, 4)
1976 TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, aemrtext, 40)
1977 }
1978
1979 static void test_pack_EMRPOLYTEXTOUTW(void)
1980 {
1981 /* EMRPOLYTEXTOUTW */
1982 TEST_TYPE_SIZE (EMRPOLYTEXTOUTW, 80)
1983 TEST_TYPE_ALIGN (EMRPOLYTEXTOUTW, 4)
1984 TEST_FIELD_SIZE (EMRPOLYTEXTOUTW, emr, 8)
1985 TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, emr, 4)
1986 TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, emr, 0)
1987 TEST_FIELD_SIZE (EMRPOLYTEXTOUTW, rclBounds, 16)
1988 TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, rclBounds, 4)
1989 TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, rclBounds, 8)
1990 TEST_FIELD_SIZE (EMRPOLYTEXTOUTW, iGraphicsMode, 4)
1991 TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, iGraphicsMode, 4)
1992 TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, iGraphicsMode, 24)
1993 TEST_FIELD_SIZE (EMRPOLYTEXTOUTW, exScale, 4)
1994 TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, exScale, 4)
1995 TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, exScale, 28)
1996 TEST_FIELD_SIZE (EMRPOLYTEXTOUTW, eyScale, 4)
1997 TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, eyScale, 4)
1998 TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, eyScale, 32)
1999 TEST_FIELD_SIZE (EMRPOLYTEXTOUTW, cStrings, 4)
2000 TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, cStrings, 4)
2001 TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, cStrings, 36)
2002 TEST_FIELD_SIZE (EMRPOLYTEXTOUTW, aemrtext, 40)
2003 TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, aemrtext, 4)
2004 TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, aemrtext, 40)
2005 }
2006
2007 static void test_pack_EMRREALIZEPALETTE(void)
2008 {
2009 /* EMRREALIZEPALETTE */
2010 TEST_TYPE_SIZE (EMRREALIZEPALETTE, 8)
2011 TEST_TYPE_ALIGN (EMRREALIZEPALETTE, 4)
2012 TEST_FIELD_SIZE (EMRREALIZEPALETTE, emr, 8)
2013 TEST_FIELD_ALIGN (EMRREALIZEPALETTE, emr, 4)
2014 TEST_FIELD_OFFSET(EMRREALIZEPALETTE, emr, 0)
2015 }
2016
2017 static void test_pack_EMRRECTANGLE(void)
2018 {
2019 /* EMRRECTANGLE */
2020 TEST_TYPE_SIZE (EMRRECTANGLE, 24)
2021 TEST_TYPE_ALIGN (EMRRECTANGLE, 4)
2022 TEST_FIELD_SIZE (EMRRECTANGLE, emr, 8)
2023 TEST_FIELD_ALIGN (EMRRECTANGLE, emr, 4)
2024 TEST_FIELD_OFFSET(EMRRECTANGLE, emr, 0)
2025 TEST_FIELD_SIZE (EMRRECTANGLE, rclBox, 16)
2026 TEST_FIELD_ALIGN (EMRRECTANGLE, rclBox, 4)
2027 TEST_FIELD_OFFSET(EMRRECTANGLE, rclBox, 8)
2028 }
2029
2030 static void test_pack_EMRRESIZEPALETTE(void)
2031 {
2032 /* EMRRESIZEPALETTE */
2033 TEST_TYPE_SIZE (EMRRESIZEPALETTE, 16)
2034 TEST_TYPE_ALIGN (EMRRESIZEPALETTE, 4)
2035 TEST_FIELD_SIZE (EMRRESIZEPALETTE, emr, 8)
2036 TEST_FIELD_ALIGN (EMRRESIZEPALETTE, emr, 4)
2037 TEST_FIELD_OFFSET(EMRRESIZEPALETTE, emr, 0)
2038 TEST_FIELD_SIZE (EMRRESIZEPALETTE, ihPal, 4)
2039 TEST_FIELD_ALIGN (EMRRESIZEPALETTE, ihPal, 4)
2040 TEST_FIELD_OFFSET(EMRRESIZEPALETTE, ihPal, 8)
2041 TEST_FIELD_SIZE (EMRRESIZEPALETTE, cEntries, 4)
2042 TEST_FIELD_ALIGN (EMRRESIZEPALETTE, cEntries, 4)
2043 TEST_FIELD_OFFSET(EMRRESIZEPALETTE, cEntries, 12)
2044 }
2045
2046 static void test_pack_EMRRESTOREDC(void)
2047 {
2048 /* EMRRESTOREDC */
2049 TEST_TYPE_SIZE (EMRRESTOREDC, 12)
2050 TEST_TYPE_ALIGN (EMRRESTOREDC, 4)
2051 TEST_FIELD_SIZE (EMRRESTOREDC, emr, 8)
2052 TEST_FIELD_ALIGN (EMRRESTOREDC, emr, 4)
2053 TEST_FIELD_OFFSET(EMRRESTOREDC, emr, 0)
2054 TEST_FIELD_SIZE (EMRRESTOREDC, iRelative, 4)
2055 TEST_FIELD_ALIGN (EMRRESTOREDC, iRelative, 4)
2056 TEST_FIELD_OFFSET(EMRRESTOREDC, iRelative, 8)
2057 }
2058
2059 static void test_pack_EMRROUNDRECT(void)
2060 {
2061 /* EMRROUNDRECT */
2062 TEST_TYPE_SIZE (EMRROUNDRECT, 32)
2063 TEST_TYPE_ALIGN (EMRROUNDRECT, 4)
2064 TEST_FIELD_SIZE (EMRROUNDRECT, emr, 8)
2065 TEST_FIELD_ALIGN (EMRROUNDRECT, emr, 4)
2066 TEST_FIELD_OFFSET(EMRROUNDRECT, emr, 0)
2067 TEST_FIELD_SIZE (EMRROUNDRECT, rclBox, 16)
2068 TEST_FIELD_ALIGN (EMRROUNDRECT, rclBox, 4)
2069 TEST_FIELD_OFFSET(EMRROUNDRECT, rclBox, 8)
2070 TEST_FIELD_SIZE (EMRROUNDRECT, szlCorner, 8)
2071 TEST_FIELD_ALIGN (EMRROUNDRECT, szlCorner, 4)
2072 TEST_FIELD_OFFSET(EMRROUNDRECT, szlCorner, 24)
2073 }
2074
2075 static void test_pack_EMRSAVEDC(void)
2076 {
2077 /* EMRSAVEDC */
2078 TEST_TYPE_SIZE (EMRSAVEDC, 8)
2079 TEST_TYPE_ALIGN (EMRSAVEDC, 4)
2080 TEST_FIELD_SIZE (EMRSAVEDC, emr, 8)
2081 TEST_FIELD_ALIGN (EMRSAVEDC, emr, 4)
2082 TEST_FIELD_OFFSET(EMRSAVEDC, emr, 0)
2083 }
2084
2085 static void test_pack_EMRSCALEVIEWPORTEXTEX(void)
2086 {
2087 /* EMRSCALEVIEWPORTEXTEX */
2088 TEST_TYPE_SIZE (EMRSCALEVIEWPORTEXTEX, 24)
2089 TEST_TYPE_ALIGN (EMRSCALEVIEWPORTEXTEX, 4)
2090 TEST_FIELD_SIZE (EMRSCALEVIEWPORTEXTEX, emr, 8)
2091 TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, emr, 4)
2092 TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, emr, 0)
2093 TEST_FIELD_SIZE (EMRSCALEVIEWPORTEXTEX, xNum, 4)
2094 TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, xNum, 4)
2095 TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, xNum, 8)
2096 TEST_FIELD_SIZE (EMRSCALEVIEWPORTEXTEX, xDenom, 4)
2097 TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, xDenom, 4)
2098 TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, xDenom, 12)
2099 TEST_FIELD_SIZE (EMRSCALEVIEWPORTEXTEX, yNum, 4)
2100 TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, yNum, 4)
2101 TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, yNum, 16)
2102 TEST_FIELD_SIZE (EMRSCALEVIEWPORTEXTEX, yDenom, 4)
2103 TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, yDenom, 4)
2104 TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, yDenom, 20)
2105 }
2106
2107 static void test_pack_EMRSCALEWINDOWEXTEX(void)
2108 {
2109 /* EMRSCALEWINDOWEXTEX */
2110 TEST_TYPE_SIZE (EMRSCALEWINDOWEXTEX, 24)
2111 TEST_TYPE_ALIGN (EMRSCALEWINDOWEXTEX, 4)
2112 TEST_FIELD_SIZE (EMRSCALEWINDOWEXTEX, emr, 8)
2113 TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, emr, 4)
2114 TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, emr, 0)
2115 TEST_FIELD_SIZE (EMRSCALEWINDOWEXTEX, xNum, 4)
2116 TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, xNum, 4)
2117 TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, xNum, 8)
2118 TEST_FIELD_SIZE (EMRSCALEWINDOWEXTEX, xDenom, 4)
2119 TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, xDenom, 4)
2120 TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, xDenom, 12)
2121 TEST_FIELD_SIZE (EMRSCALEWINDOWEXTEX, yNum, 4)
2122 TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, yNum, 4)
2123 TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, yNum, 16)
2124 TEST_FIELD_SIZE (EMRSCALEWINDOWEXTEX, yDenom, 4)
2125 TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, yDenom, 4)
2126 TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, yDenom, 20)
2127 }
2128
2129 static void test_pack_EMRSELECTCLIPPATH(void)
2130 {
2131 /* EMRSELECTCLIPPATH */
2132 TEST_TYPE_SIZE (EMRSELECTCLIPPATH, 12)
2133 TEST_TYPE_ALIGN (EMRSELECTCLIPPATH, 4)
2134 TEST_FIELD_SIZE (EMRSELECTCLIPPATH, emr, 8)
2135 TEST_FIELD_ALIGN (EMRSELECTCLIPPATH, emr, 4)
2136 TEST_FIELD_OFFSET(EMRSELECTCLIPPATH, emr, 0)
2137 TEST_FIELD_SIZE (EMRSELECTCLIPPATH, iMode, 4)
2138 TEST_FIELD_ALIGN (EMRSELECTCLIPPATH, iMode, 4)
2139 TEST_FIELD_OFFSET(EMRSELECTCLIPPATH, iMode, 8)
2140 }
2141
2142 static void test_pack_EMRSELECTCOLORSPACE(void)
2143 {
2144 /* EMRSELECTCOLORSPACE */
2145 TEST_TYPE_SIZE (EMRSELECTCOLORSPACE, 12)
2146 TEST_TYPE_ALIGN (EMRSELECTCOLORSPACE, 4)
2147 TEST_FIELD_SIZE (EMRSELECTCOLORSPACE, emr, 8)
2148 TEST_FIELD_ALIGN (EMRSELECTCOLORSPACE, emr, 4)
2149 TEST_FIELD_OFFSET(EMRSELECTCOLORSPACE, emr, 0)
2150 TEST_FIELD_SIZE (EMRSELECTCOLORSPACE, ihCS, 4)
2151 TEST_FIELD_ALIGN (EMRSELECTCOLORSPACE, ihCS, 4)
2152 TEST_FIELD_OFFSET(EMRSELECTCOLORSPACE, ihCS, 8)
2153 }
2154
2155 static void test_pack_EMRSELECTOBJECT(void)
2156 {
2157 /* EMRSELECTOBJECT */
2158 TEST_TYPE_SIZE (EMRSELECTOBJECT, 12)
2159 TEST_TYPE_ALIGN (EMRSELECTOBJECT, 4)
2160 TEST_FIELD_SIZE (EMRSELECTOBJECT, emr, 8)
2161 TEST_FIELD_ALIGN (EMRSELECTOBJECT, emr, 4)
2162 TEST_FIELD_OFFSET(EMRSELECTOBJECT, emr, 0)
2163 TEST_FIELD_SIZE (EMRSELECTOBJECT, ihObject, 4)
2164 TEST_FIELD_ALIGN (EMRSELECTOBJECT, ihObject, 4)
2165 TEST_FIELD_OFFSET(EMRSELECTOBJECT, ihObject, 8)
2166 }
2167
2168 static void test_pack_EMRSELECTPALETTE(void)
2169 {
2170 /* EMRSELECTPALETTE */
2171 TEST_TYPE_SIZE (EMRSELECTPALETTE, 12)
2172 TEST_TYPE_ALIGN (EMRSELECTPALETTE, 4)
2173 TEST_FIELD_SIZE (EMRSELECTPALETTE, emr, 8)
2174 TEST_FIELD_ALIGN (EMRSELECTPALETTE, emr, 4)
2175 TEST_FIELD_OFFSET(EMRSELECTPALETTE, emr, 0)
2176 TEST_FIELD_SIZE (EMRSELECTPALETTE, ihPal, 4)
2177 TEST_FIELD_ALIGN (EMRSELECTPALETTE, ihPal, 4)
2178 TEST_FIELD_OFFSET(EMRSELECTPALETTE, ihPal, 8)
2179 }
2180
2181 static void test_pack_EMRSETARCDIRECTION(void)
2182 {
2183 /* EMRSETARCDIRECTION */
2184 TEST_TYPE_SIZE (EMRSETARCDIRECTION, 12)
2185 TEST_TYPE_ALIGN (EMRSETARCDIRECTION, 4)
2186 TEST_FIELD_SIZE (EMRSETARCDIRECTION, emr, 8)
2187 TEST_FIELD_ALIGN (EMRSETARCDIRECTION, emr, 4)
2188 TEST_FIELD_OFFSET(EMRSETARCDIRECTION, emr, 0)
2189 TEST_FIELD_SIZE (EMRSETARCDIRECTION, iArcDirection, 4)
2190 TEST_FIELD_ALIGN (EMRSETARCDIRECTION, iArcDirection, 4)
2191 TEST_FIELD_OFFSET(EMRSETARCDIRECTION, iArcDirection, 8)
2192 }
2193
2194 static void test_pack_EMRSETBKCOLOR(void)
2195 {
2196 /* EMRSETBKCOLOR */
2197 TEST_TYPE_SIZE (EMRSETBKCOLOR, 12)
2198 TEST_TYPE_ALIGN (EMRSETBKCOLOR, 4)
2199 TEST_FIELD_SIZE (EMRSETBKCOLOR, emr, 8)
2200 TEST_FIELD_ALIGN (EMRSETBKCOLOR, emr, 4)
2201 TEST_FIELD_OFFSET(EMRSETBKCOLOR, emr, 0)
2202 TEST_FIELD_SIZE (EMRSETBKCOLOR, crColor, 4)
2203 TEST_FIELD_ALIGN (EMRSETBKCOLOR, crColor, 4)
2204 TEST_FIELD_OFFSET(EMRSETBKCOLOR, crColor, 8)
2205 }
2206
2207 static void test_pack_EMRSETBKMODE(void)
2208 {
2209 /* EMRSETBKMODE */
2210 TEST_TYPE_SIZE (EMRSETBKMODE, 12)
2211 TEST_TYPE_ALIGN (EMRSETBKMODE, 4)
2212 TEST_FIELD_SIZE (EMRSETBKMODE, emr, 8)
2213 TEST_FIELD_ALIGN (EMRSETBKMODE, emr, 4)
2214 TEST_FIELD_OFFSET(EMRSETBKMODE, emr, 0)
2215 TEST_FIELD_SIZE (EMRSETBKMODE, iMode, 4)
2216 TEST_FIELD_ALIGN (EMRSETBKMODE, iMode, 4)
2217 TEST_FIELD_OFFSET(EMRSETBKMODE, iMode, 8)
2218 }
2219
2220 static void test_pack_EMRSETBRUSHORGEX(void)
2221 {
2222 /* EMRSETBRUSHORGEX */
2223 TEST_TYPE_SIZE (EMRSETBRUSHORGEX, 16)
2224 TEST_TYPE_ALIGN (EMRSETBRUSHORGEX, 4)
2225 TEST_FIELD_SIZE (EMRSETBRUSHORGEX, emr, 8)
2226 TEST_FIELD_ALIGN (EMRSETBRUSHORGEX, emr, 4)
2227 TEST_FIELD_OFFSET(EMRSETBRUSHORGEX, emr, 0)
2228 TEST_FIELD_SIZE (EMRSETBRUSHORGEX, ptlOrigin, 8)
2229 TEST_FIELD_ALIGN (EMRSETBRUSHORGEX, ptlOrigin, 4)
2230 TEST_FIELD_OFFSET(EMRSETBRUSHORGEX, ptlOrigin, 8)
2231 }
2232
2233 static void test_pack_EMRSETCOLORADJUSTMENT(void)
2234 {
2235 /* EMRSETCOLORADJUSTMENT */
2236 TEST_TYPE_SIZE (EMRSETCOLORADJUSTMENT, 32)
2237 TEST_TYPE_ALIGN (EMRSETCOLORADJUSTMENT, 4)
2238 TEST_FIELD_SIZE (EMRSETCOLORADJUSTMENT, emr, 8)
2239 TEST_FIELD_ALIGN (EMRSETCOLORADJUSTMENT, emr, 4)
2240 TEST_FIELD_OFFSET(EMRSETCOLORADJUSTMENT, emr, 0)
2241 TEST_FIELD_SIZE (EMRSETCOLORADJUSTMENT, ColorAdjustment, 24)
2242 TEST_FIELD_ALIGN (EMRSETCOLORADJUSTMENT, ColorAdjustment, 2)
2243 TEST_FIELD_OFFSET(EMRSETCOLORADJUSTMENT, ColorAdjustment, 8)
2244 }
2245
2246 static void test_pack_EMRSETCOLORSPACE(void)
2247 {
2248 /* EMRSETCOLORSPACE */
2249 TEST_TYPE_SIZE (EMRSETCOLORSPACE, 12)
2250 TEST_TYPE_ALIGN (EMRSETCOLORSPACE, 4)
2251 TEST_FIELD_SIZE (EMRSETCOLORSPACE, emr, 8)
2252 TEST_FIELD_ALIGN (EMRSETCOLORSPACE, emr, 4)
2253 TEST_FIELD_OFFSET(EMRSETCOLORSPACE, emr, 0)
2254 TEST_FIELD_SIZE (EMRSETCOLORSPACE, ihCS, 4)
2255 TEST_FIELD_ALIGN (EMRSETCOLORSPACE, ihCS, 4)
2256 TEST_FIELD_OFFSET(EMRSETCOLORSPACE, ihCS, 8)
2257 }
2258
2259 static void test_pack_EMRSETDIBITSTODEVICE(void)
2260 {
2261 /* EMRSETDIBITSTODEVICE */
2262 TEST_TYPE_SIZE (EMRSETDIBITSTODEVICE, 76)
2263 TEST_TYPE_ALIGN (EMRSETDIBITSTODEVICE, 4)
2264 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, emr, 8)
2265 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, emr, 4)
2266 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, emr, 0)
2267 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, rclBounds, 16)
2268 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, rclBounds, 4)
2269 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, rclBounds, 8)
2270 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, xDest, 4)
2271 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, xDest, 4)
2272 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, xDest, 24)
2273 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, yDest, 4)
2274 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, yDest, 4)
2275 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, yDest, 28)
2276 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, xSrc, 4)
2277 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, xSrc, 4)
2278 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, xSrc, 32)
2279 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, ySrc, 4)
2280 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, ySrc, 4)
2281 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, ySrc, 36)
2282 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, cxSrc, 4)
2283 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cxSrc, 4)
2284 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cxSrc, 40)
2285 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, cySrc, 4)
2286 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cySrc, 4)
2287 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cySrc, 44)
2288 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, offBmiSrc, 4)
2289 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, offBmiSrc, 4)
2290 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, offBmiSrc, 48)
2291 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, cbBmiSrc, 4)
2292 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cbBmiSrc, 4)
2293 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cbBmiSrc, 52)
2294 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, offBitsSrc, 4)
2295 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, offBitsSrc, 4)
2296 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, offBitsSrc, 56)
2297 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, cbBitsSrc, 4)
2298 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cbBitsSrc, 4)
2299 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cbBitsSrc, 60)
2300 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, iUsageSrc, 4)
2301 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, iUsageSrc, 4)
2302 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, iUsageSrc, 64)
2303 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, iStartScan, 4)
2304 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, iStartScan, 4)
2305 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, iStartScan, 68)
2306 TEST_FIELD_SIZE (EMRSETDIBITSTODEVICE, cScans, 4)
2307 TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cScans, 4)
2308 TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cScans, 72)
2309 }
2310
2311 static void test_pack_EMRSETICMMODE(void)
2312 {
2313 /* EMRSETICMMODE */
2314 TEST_TYPE_SIZE (EMRSETICMMODE, 12)
2315 TEST_TYPE_ALIGN (EMRSETICMMODE, 4)
2316 TEST_FIELD_SIZE (EMRSETICMMODE, emr, 8)
2317 TEST_FIELD_ALIGN (EMRSETICMMODE, emr, 4)
2318 TEST_FIELD_OFFSET(EMRSETICMMODE, emr, 0)
2319 TEST_FIELD_SIZE (EMRSETICMMODE, iMode, 4)
2320 TEST_FIELD_ALIGN (EMRSETICMMODE, iMode, 4)
2321 TEST_FIELD_OFFSET(EMRSETICMMODE, iMode, 8)
2322 }
2323
2324 static void test_pack_EMRSETLAYOUT(void)
2325 {
2326 /* EMRSETLAYOUT */
2327 TEST_TYPE_SIZE (EMRSETLAYOUT, 12)
2328 TEST_TYPE_ALIGN (EMRSETLAYOUT, 4)
2329 TEST_FIELD_SIZE (EMRSETLAYOUT, emr, 8)
2330 TEST_FIELD_ALIGN (EMRSETLAYOUT, emr, 4)
2331 TEST_FIELD_OFFSET(EMRSETLAYOUT, emr, 0)
2332 TEST_FIELD_SIZE (EMRSETLAYOUT, iMode, 4)
2333 TEST_FIELD_ALIGN (EMRSETLAYOUT, iMode, 4)
2334 TEST_FIELD_OFFSET(EMRSETLAYOUT, iMode, 8)
2335 }
2336
2337 static void test_pack_EMRSETMAPMODE(void)
2338 {
2339 /* EMRSETMAPMODE */
2340 TEST_TYPE_SIZE (EMRSETMAPMODE, 12)
2341 TEST_TYPE_ALIGN (EMRSETMAPMODE, 4)
2342 TEST_FIELD_SIZE (EMRSETMAPMODE, emr, 8)
2343 TEST_FIELD_ALIGN (EMRSETMAPMODE, emr, 4)
2344 TEST_FIELD_OFFSET(EMRSETMAPMODE, emr, 0)
2345 TEST_FIELD_SIZE (EMRSETMAPMODE, iMode, 4)
2346 TEST_FIELD_ALIGN (EMRSETMAPMODE, iMode, 4)
2347 TEST_FIELD_OFFSET(EMRSETMAPMODE, iMode, 8)
2348 }
2349
2350 static void test_pack_EMRSETMAPPERFLAGS(void)
2351 {
2352 /* EMRSETMAPPERFLAGS */
2353 TEST_TYPE_SIZE (EMRSETMAPPERFLAGS, 12)
2354 TEST_TYPE_ALIGN (EMRSETMAPPERFLAGS, 4)
2355 TEST_FIELD_SIZE (EMRSETMAPPERFLAGS, emr, 8)
2356 TEST_FIELD_ALIGN (EMRSETMAPPERFLAGS, emr, 4)
2357 TEST_FIELD_OFFSET(EMRSETMAPPERFLAGS, emr, 0)
2358 TEST_FIELD_SIZE (EMRSETMAPPERFLAGS, dwFlags, 4)
2359 TEST_FIELD_ALIGN (EMRSETMAPPERFLAGS, dwFlags, 4)
2360 TEST_FIELD_OFFSET(EMRSETMAPPERFLAGS, dwFlags, 8)
2361 }
2362
2363 static void test_pack_EMRSETMETARGN(void)
2364 {
2365 /* EMRSETMETARGN */
2366 TEST_TYPE_SIZE (EMRSETMETARGN, 8)
2367 TEST_TYPE_ALIGN (EMRSETMETARGN, 4)
2368 TEST_FIELD_SIZE (EMRSETMETARGN, emr, 8)
2369 TEST_FIELD_ALIGN (EMRSETMETARGN, emr, 4)
2370 TEST_FIELD_OFFSET(EMRSETMETARGN, emr, 0)
2371 }
2372
2373 static void test_pack_EMRSETMITERLIMIT(void)
2374 {
2375 /* EMRSETMITERLIMIT */
2376 TEST_TYPE_SIZE (EMRSETMITERLIMIT, 12)
2377 TEST_TYPE_ALIGN (EMRSETMITERLIMIT, 4)
2378 TEST_FIELD_SIZE (EMRSETMITERLIMIT, emr, 8)
2379 TEST_FIELD_ALIGN (EMRSETMITERLIMIT, emr, 4)
2380 TEST_FIELD_OFFSET(EMRSETMITERLIMIT, emr, 0)
2381 TEST_FIELD_SIZE (EMRSETMITERLIMIT, eMiterLimit, 4)
2382 TEST_FIELD_ALIGN (EMRSETMITERLIMIT, eMiterLimit, 4)
2383 TEST_FIELD_OFFSET(EMRSETMITERLIMIT, eMiterLimit, 8)
2384 }
2385
2386 static void test_pack_EMRSETPIXELV(void)
2387 {
2388 /* EMRSETPIXELV */
2389 TEST_TYPE_SIZE (EMRSETPIXELV, 20)
2390 TEST_TYPE_ALIGN (EMRSETPIXELV, 4)
2391 TEST_FIELD_SIZE (EMRSETPIXELV, emr, 8)
2392 TEST_FIELD_ALIGN (EMRSETPIXELV, emr, 4)
2393 TEST_FIELD_OFFSET(EMRSETPIXELV, emr, 0)
2394 TEST_FIELD_SIZE (EMRSETPIXELV, ptlPixel, 8)
2395 TEST_FIELD_ALIGN (EMRSETPIXELV, ptlPixel, 4)
2396 TEST_FIELD_OFFSET(EMRSETPIXELV, ptlPixel, 8)
2397 TEST_FIELD_SIZE (EMRSETPIXELV, crColor, 4)
2398 TEST_FIELD_ALIGN (EMRSETPIXELV, crColor, 4)
2399 TEST_FIELD_OFFSET(EMRSETPIXELV, crColor, 16)
2400 }
2401
2402 static void test_pack_EMRSETPOLYFILLMODE(void)
2403 {
2404 /* EMRSETPOLYFILLMODE */
2405 TEST_TYPE_SIZE (EMRSETPOLYFILLMODE, 12)
2406 TEST_TYPE_ALIGN (EMRSETPOLYFILLMODE, 4)
2407 TEST_FIELD_SIZE (EMRSETPOLYFILLMODE, emr, 8)
2408 TEST_FIELD_ALIGN (EMRSETPOLYFILLMODE, emr, 4)
2409 TEST_FIELD_OFFSET(EMRSETPOLYFILLMODE, emr, 0)
2410 TEST_FIELD_SIZE (EMRSETPOLYFILLMODE, iMode, 4)
2411 TEST_FIELD_ALIGN (EMRSETPOLYFILLMODE, iMode, 4)
2412 TEST_FIELD_OFFSET(EMRSETPOLYFILLMODE, iMode, 8)
2413 }
2414
2415 static void test_pack_EMRSETROP2(void)
2416 {
2417 /* EMRSETROP2 */
2418 TEST_TYPE_SIZE (EMRSETROP2, 12)
2419 TEST_TYPE_ALIGN (EMRSETROP2, 4)
2420 TEST_FIELD_SIZE (EMRSETROP2, emr, 8)
2421 TEST_FIELD_ALIGN (EMRSETROP2, emr, 4)
2422 TEST_FIELD_OFFSET(EMRSETROP2, emr, 0)
2423 TEST_FIELD_SIZE (EMRSETROP2, iMode, 4)
2424 TEST_FIELD_ALIGN (EMRSETROP2, iMode, 4)
2425 TEST_FIELD_OFFSET(EMRSETROP2, iMode, 8)
2426 }
2427
2428 static void test_pack_EMRSETSTRETCHBLTMODE(void)
2429 {
2430 /* EMRSETSTRETCHBLTMODE */
2431 TEST_TYPE_SIZE (EMRSETSTRETCHBLTMODE, 12)
2432 TEST_TYPE_ALIGN (EMRSETSTRETCHBLTMODE, 4)
2433 TEST_FIELD_SIZE (EMRSETSTRETCHBLTMODE, emr, 8)
2434 TEST_FIELD_ALIGN (EMRSETSTRETCHBLTMODE, emr, 4)
2435 TEST_FIELD_OFFSET(EMRSETSTRETCHBLTMODE, emr, 0)
2436 TEST_FIELD_SIZE (EMRSETSTRETCHBLTMODE, iMode, 4)
2437 TEST_FIELD_ALIGN (EMRSETSTRETCHBLTMODE, iMode, 4)
2438 TEST_FIELD_OFFSET(EMRSETSTRETCHBLTMODE, iMode, 8)
2439 }
2440
2441 static void test_pack_EMRSETTEXTALIGN(void)
2442 {
2443 /* EMRSETTEXTALIGN */
2444 TEST_TYPE_SIZE (EMRSETTEXTALIGN, 12)
2445 TEST_TYPE_ALIGN (EMRSETTEXTALIGN, 4)
2446 TEST_FIELD_SIZE (EMRSETTEXTALIGN, emr, 8)
2447 TEST_FIELD_ALIGN (EMRSETTEXTALIGN, emr, 4)
2448 TEST_FIELD_OFFSET(EMRSETTEXTALIGN, emr, 0)
2449 TEST_FIELD_SIZE (EMRSETTEXTALIGN, iMode, 4)
2450 TEST_FIELD_ALIGN (EMRSETTEXTALIGN, iMode, 4)
2451 TEST_FIELD_OFFSET(EMRSETTEXTALIGN, iMode, 8)
2452 }
2453
2454 static void test_pack_EMRSETTEXTCOLOR(void)
2455 {
2456 /* EMRSETTEXTCOLOR */
2457 TEST_TYPE_SIZE (EMRSETTEXTCOLOR, 12)
2458 TEST_TYPE_ALIGN (EMRSETTEXTCOLOR, 4)
2459 TEST_FIELD_SIZE (EMRSETTEXTCOLOR, emr, 8)
2460 TEST_FIELD_ALIGN (EMRSETTEXTCOLOR, emr, 4)
2461 TEST_FIELD_OFFSET(EMRSETTEXTCOLOR, emr, 0)
2462 TEST_FIELD_SIZE (EMRSETTEXTCOLOR, crColor, 4)
2463 TEST_FIELD_ALIGN (EMRSETTEXTCOLOR, crColor, 4)
2464 TEST_FIELD_OFFSET(EMRSETTEXTCOLOR, crColor, 8)
2465 }
2466
2467 static void test_pack_EMRSETVIEWPORTEXTEX(void)
2468 {
2469 /* EMRSETVIEWPORTEXTEX */
2470 TEST_TYPE_SIZE (EMRSETVIEWPORTEXTEX, 16)
2471 TEST_TYPE_ALIGN (EMRSETVIEWPORTEXTEX, 4)
2472 TEST_FIELD_SIZE (EMRSETVIEWPORTEXTEX, emr, 8)
2473 TEST_FIELD_ALIGN (EMRSETVIEWPORTEXTEX, emr, 4)
2474 TEST_FIELD_OFFSET(EMRSETVIEWPORTEXTEX, emr, 0)
2475 TEST_FIELD_SIZE (EMRSETVIEWPORTEXTEX, szlExtent, 8)
2476 TEST_FIELD_ALIGN (EMRSETVIEWPORTEXTEX, szlExtent, 4)
2477 TEST_FIELD_OFFSET(EMRSETVIEWPORTEXTEX, szlExtent, 8)
2478 }
2479
2480 static void test_pack_EMRSETVIEWPORTORGEX(void)
2481 {
2482 /* EMRSETVIEWPORTORGEX */
2483 TEST_TYPE_SIZE (EMRSETVIEWPORTORGEX, 16)
2484 TEST_TYPE_ALIGN (EMRSETVIEWPORTORGEX, 4)
2485 TEST_FIELD_SIZE (EMRSETVIEWPORTORGEX, emr, 8)
2486 TEST_FIELD_ALIGN (EMRSETVIEWPORTORGEX, emr, 4)
2487 TEST_FIELD_OFFSET(EMRSETVIEWPORTORGEX, emr, 0)
2488 TEST_FIELD_SIZE (EMRSETVIEWPORTORGEX, ptlOrigin, 8)
2489 TEST_FIELD_ALIGN (EMRSETVIEWPORTORGEX, ptlOrigin, 4)
2490 TEST_FIELD_OFFSET(EMRSETVIEWPORTORGEX, ptlOrigin, 8)
2491 }
2492
2493 static void test_pack_EMRSETWINDOWEXTEX(void)
2494 {
2495 /* EMRSETWINDOWEXTEX */
2496 TEST_TYPE_SIZE (EMRSETWINDOWEXTEX, 16)
2497 TEST_TYPE_ALIGN (EMRSETWINDOWEXTEX, 4)
2498 TEST_FIELD_SIZE (EMRSETWINDOWEXTEX, emr, 8)
2499 TEST_FIELD_ALIGN (EMRSETWINDOWEXTEX, emr, 4)
2500 TEST_FIELD_OFFSET(EMRSETWINDOWEXTEX, emr, 0)
2501 TEST_FIELD_SIZE (EMRSETWINDOWEXTEX, szlExtent, 8)
2502 TEST_FIELD_ALIGN (EMRSETWINDOWEXTEX, szlExtent, 4)
2503 TEST_FIELD_OFFSET(EMRSETWINDOWEXTEX, szlExtent, 8)
2504 }
2505
2506 static void test_pack_EMRSETWINDOWORGEX(void)
2507 {
2508 /* EMRSETWINDOWORGEX */
2509 TEST_TYPE_SIZE (EMRSETWINDOWORGEX, 16)
2510 TEST_TYPE_ALIGN (EMRSETWINDOWORGEX, 4)
2511 TEST_FIELD_SIZE (EMRSETWINDOWORGEX, emr, 8)
2512 TEST_FIELD_ALIGN (EMRSETWINDOWORGEX, emr, 4)
2513 TEST_FIELD_OFFSET(EMRSETWINDOWORGEX, emr, 0)
2514 TEST_FIELD_SIZE (EMRSETWINDOWORGEX, ptlOrigin, 8)
2515 TEST_FIELD_ALIGN (EMRSETWINDOWORGEX, ptlOrigin, 4)
2516 TEST_FIELD_OFFSET(EMRSETWINDOWORGEX, ptlOrigin, 8)
2517 }
2518
2519 static void test_pack_EMRSETWORLDTRANSFORM(void)
2520 {
2521 /* EMRSETWORLDTRANSFORM */
2522 TEST_TYPE_SIZE (EMRSETWORLDTRANSFORM, 32)
2523 TEST_TYPE_ALIGN (EMRSETWORLDTRANSFORM, 4)
2524 TEST_FIELD_SIZE (EMRSETWORLDTRANSFORM, emr, 8)
2525 TEST_FIELD_ALIGN (EMRSETWORLDTRANSFORM, emr, 4)
2526 TEST_FIELD_OFFSET(EMRSETWORLDTRANSFORM, emr, 0)
2527 TEST_FIELD_SIZE (EMRSETWORLDTRANSFORM, xform, 24)
2528 TEST_FIELD_ALIGN (EMRSETWORLDTRANSFORM, xform, 4)
2529 TEST_FIELD_OFFSET(EMRSETWORLDTRANSFORM, xform, 8)
2530 }
2531
2532 static void test_pack_EMRSTRETCHBLT(void)
2533 {
2534 /* EMRSTRETCHBLT */
2535 TEST_TYPE_SIZE (EMRSTRETCHBLT, 108)
2536 TEST_TYPE_ALIGN (EMRSTRETCHBLT, 4)
2537 TEST_FIELD_SIZE (EMRSTRETCHBLT, emr, 8)
2538 TEST_FIELD_ALIGN (EMRSTRETCHBLT, emr, 4)
2539 TEST_FIELD_OFFSET(EMRSTRETCHBLT, emr, 0)
2540 TEST_FIELD_SIZE (EMRSTRETCHBLT, rclBounds, 16)
2541 TEST_FIELD_ALIGN (EMRSTRETCHBLT, rclBounds, 4)
2542 TEST_FIELD_OFFSET(EMRSTRETCHBLT, rclBounds, 8)
2543 TEST_FIELD_SIZE (EMRSTRETCHBLT, xDest, 4)
2544 TEST_FIELD_ALIGN (EMRSTRETCHBLT, xDest, 4)
2545 TEST_FIELD_OFFSET(EMRSTRETCHBLT, xDest, 24)
2546 TEST_FIELD_SIZE (EMRSTRETCHBLT, yDest, 4)
2547 TEST_FIELD_ALIGN (EMRSTRETCHBLT, yDest, 4)
2548 TEST_FIELD_OFFSET(EMRSTRETCHBLT, yDest, 28)
2549 TEST_FIELD_SIZE (EMRSTRETCHBLT, cxDest, 4)
2550 TEST_FIELD_ALIGN (EMRSTRETCHBLT, cxDest, 4)
2551 TEST_FIELD_OFFSET(EMRSTRETCHBLT, cxDest, 32)
2552 TEST_FIELD_SIZE (EMRSTRETCHBLT, cyDest, 4)
2553 TEST_FIELD_ALIGN (EMRSTRETCHBLT, cyDest, 4)
2554 TEST_FIELD_OFFSET(EMRSTRETCHBLT, cyDest, 36)
2555 TEST_FIELD_SIZE (EMRSTRETCHBLT, dwRop, 4)
2556 TEST_FIELD_ALIGN (EMRSTRETCHBLT, dwRop, 4)
2557 TEST_FIELD_OFFSET(EMRSTRETCHBLT, dwRop, 40)
2558 TEST_FIELD_SIZE (EMRSTRETCHBLT, xSrc, 4)
2559 TEST_FIELD_ALIGN (EMRSTRETCHBLT, xSrc, 4)
2560 TEST_FIELD_OFFSET(EMRSTRETCHBLT, xSrc, 44)
2561 TEST_FIELD_SIZE (EMRSTRETCHBLT, ySrc, 4)
2562 TEST_FIELD_ALIGN (EMRSTRETCHBLT, ySrc, 4)
2563 TEST_FIELD_OFFSET(EMRSTRETCHBLT, ySrc, 48)
2564 TEST_FIELD_SIZE (EMRSTRETCHBLT, xformSrc, 24)
2565 TEST_FIELD_ALIGN (EMRSTRETCHBLT, xformSrc, 4)
2566 TEST_FIELD_OFFSET(EMRSTRETCHBLT, xformSrc, 52)
2567 TEST_FIELD_SIZE (EMRSTRETCHBLT, crBkColorSrc, 4)
2568 TEST_FIELD_ALIGN (EMRSTRETCHBLT, crBkColorSrc, 4)
2569 TEST_FIELD_OFFSET(EMRSTRETCHBLT, crBkColorSrc, 76)
2570 TEST_FIELD_SIZE (EMRSTRETCHBLT, iUsageSrc, 4)
2571 TEST_FIELD_ALIGN (EMRSTRETCHBLT, iUsageSrc, 4)
2572 TEST_FIELD_OFFSET(EMRSTRETCHBLT, iUsageSrc, 80)
2573 TEST_FIELD_SIZE (EMRSTRETCHBLT, offBmiSrc, 4)
2574 TEST_FIELD_ALIGN (EMRSTRETCHBLT, offBmiSrc, 4)
2575 TEST_FIELD_OFFSET(EMRSTRETCHBLT, offBmiSrc, 84)
2576 TEST_FIELD_SIZE (EMRSTRETCHBLT, cbBmiSrc, 4)
2577 TEST_FIELD_ALIGN (EMRSTRETCHBLT, cbBmiSrc, 4)
2578 TEST_FIELD_OFFSET(EMRSTRETCHBLT, cbBmiSrc, 88)
2579 TEST_FIELD_SIZE (EMRSTRETCHBLT, offBitsSrc, 4)
2580 TEST_FIELD_ALIGN (EMRSTRETCHBLT, offBitsSrc, 4)
2581 TEST_FIELD_OFFSET(EMRSTRETCHBLT, offBitsSrc, 92)
2582 TEST_FIELD_SIZE (EMRSTRETCHBLT, cbBitsSrc, 4)
2583 TEST_FIELD_ALIGN (EMRSTRETCHBLT, cbBitsSrc, 4)
2584 TEST_FIELD_OFFSET(EMRSTRETCHBLT, cbBitsSrc, 96)
2585 TEST_FIELD_SIZE (EMRSTRETCHBLT, cxSrc, 4)
2586 TEST_FIELD_ALIGN (EMRSTRETCHBLT, cxSrc, 4)
2587 TEST_FIELD_OFFSET(EMRSTRETCHBLT, cxSrc, 100)
2588 TEST_FIELD_SIZE (EMRSTRETCHBLT, cySrc, 4)
2589 TEST_FIELD_ALIGN (EMRSTRETCHBLT, cySrc, 4)
2590 TEST_FIELD_OFFSET(EMRSTRETCHBLT, cySrc, 104)
2591 }
2592
2593 static void test_pack_EMRSTRETCHDIBITS(void)
2594 {
2595 /* EMRSTRETCHDIBITS */
2596 TEST_TYPE_SIZE (EMRSTRETCHDIBITS, 80)
2597 TEST_TYPE_ALIGN (EMRSTRETCHDIBITS, 4)
2598 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, emr, 8)
2599 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, emr, 4)
2600 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, emr, 0)
2601 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, rclBounds, 16)
2602 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, rclBounds, 4)
2603 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, rclBounds, 8)
2604 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, xDest, 4)
2605 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, xDest, 4)
2606 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, xDest, 24)
2607 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, yDest, 4)
2608 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, yDest, 4)
2609 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, yDest, 28)
2610 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, xSrc, 4)
2611 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, xSrc, 4)
2612 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, xSrc, 32)
2613 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, ySrc, 4)
2614 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, ySrc, 4)
2615 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, ySrc, 36)
2616 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, cxSrc, 4)
2617 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cxSrc, 4)
2618 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cxSrc, 40)
2619 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, cySrc, 4)
2620 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cySrc, 4)
2621 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cySrc, 44)
2622 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, offBmiSrc, 4)
2623 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, offBmiSrc, 4)
2624 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, offBmiSrc, 48)
2625 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, cbBmiSrc, 4)
2626 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cbBmiSrc, 4)
2627 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cbBmiSrc, 52)
2628 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, offBitsSrc, 4)
2629 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, offBitsSrc, 4)
2630 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, offBitsSrc, 56)
2631 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, cbBitsSrc, 4)
2632 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cbBitsSrc, 4)
2633 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cbBitsSrc, 60)
2634 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, iUsageSrc, 4)
2635 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, iUsageSrc, 4)
2636 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, iUsageSrc, 64)
2637 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, dwRop, 4)
2638 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, dwRop, 4)
2639 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, dwRop, 68)
2640 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, cxDest, 4)
2641 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cxDest, 4)
2642 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cxDest, 72)
2643 TEST_FIELD_SIZE (EMRSTRETCHDIBITS, cyDest, 4)
2644 TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cyDest, 4)
2645 TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cyDest, 76)
2646 }
2647
2648 static void test_pack_EMRSTROKEANDFILLPATH(void)
2649 {
2650 /* EMRSTROKEANDFILLPATH */
2651 TEST_TYPE_SIZE (EMRSTROKEANDFILLPATH, 24)
2652 TEST_TYPE_ALIGN (EMRSTROKEANDFILLPATH, 4)
2653 TEST_FIELD_SIZE (EMRSTROKEANDFILLPATH, emr, 8)
2654 TEST_FIELD_ALIGN (EMRSTROKEANDFILLPATH, emr, 4)
2655 TEST_FIELD_OFFSET(EMRSTROKEANDFILLPATH, emr, 0)
2656 TEST_FIELD_SIZE (EMRSTROKEANDFILLPATH, rclBounds, 16)
2657 TEST_FIELD_ALIGN (EMRSTROKEANDFILLPATH, rclBounds, 4)
2658 TEST_FIELD_OFFSET(EMRSTROKEANDFILLPATH, rclBounds, 8)
2659 }
2660
2661 static void test_pack_EMRSTROKEPATH(void)
2662 {
2663 /* EMRSTROKEPATH */
2664 TEST_TYPE_SIZE (EMRSTROKEPATH, 24)
2665 TEST_TYPE_ALIGN (EMRSTROKEPATH, 4)
2666 TEST_FIELD_SIZE (EMRSTROKEPATH, emr, 8)
2667 TEST_FIELD_ALIGN (EMRSTROKEPATH, emr, 4)
2668 TEST_FIELD_OFFSET(EMRSTROKEPATH, emr, 0)
2669 TEST_FIELD_SIZE (EMRSTROKEPATH, rclBounds, 16)
2670 TEST_FIELD_ALIGN (EMRSTROKEPATH, rclBounds, 4)
2671 TEST_FIELD_OFFSET(EMRSTROKEPATH, rclBounds, 8)
2672 }
2673
2674 static void test_pack_EMRTEXT(void)
2675 {
2676 /* EMRTEXT */
2677 TEST_TYPE_SIZE (EMRTEXT, 40)
2678 TEST_TYPE_ALIGN (EMRTEXT, 4)
2679 TEST_FIELD_SIZE (EMRTEXT, ptlReference, 8)
2680 TEST_FIELD_ALIGN (EMRTEXT, ptlReference, 4)
2681 TEST_FIELD_OFFSET(EMRTEXT, ptlReference, 0)
2682 TEST_FIELD_SIZE (EMRTEXT, nChars, 4)
2683 TEST_FIELD_ALIGN (EMRTEXT, nChars, 4)
2684 TEST_FIELD_OFFSET(EMRTEXT, nChars, 8)
2685 TEST_FIELD_SIZE (EMRTEXT, offString, 4)
2686 TEST_FIELD_ALIGN (EMRTEXT, offString, 4)
2687 TEST_FIELD_OFFSET(EMRTEXT, offString, 12)
2688 TEST_FIELD_SIZE (EMRTEXT, fOptions, 4)
2689 TEST_FIELD_ALIGN (EMRTEXT, fOptions, 4)
2690 TEST_FIELD_OFFSET(EMRTEXT, fOptions, 16)
2691 TEST_FIELD_SIZE (EMRTEXT, rcl, 16)
2692 TEST_FIELD_ALIGN (EMRTEXT, rcl, 4)
2693 TEST_FIELD_OFFSET(EMRTEXT, rcl, 20)
2694 TEST_FIELD_SIZE (EMRTEXT, offDx, 4)
2695 TEST_FIELD_ALIGN (EMRTEXT, offDx, 4)
2696 TEST_FIELD_OFFSET(EMRTEXT, offDx, 36)
2697 }
2698
2699 static void test_pack_EMRWIDENPATH(void)
2700 {
2701 /* EMRWIDENPATH */
2702 TEST_TYPE_SIZE (EMRWIDENPATH, 8)
2703 TEST_TYPE_ALIGN (EMRWIDENPATH, 4)
2704 TEST_FIELD_SIZE (EMRWIDENPATH, emr, 8)
2705 TEST_FIELD_ALIGN (EMRWIDENPATH, emr, 4)
2706 TEST_FIELD_OFFSET(EMRWIDENPATH, emr, 0)
2707 }
2708
2709 static void test_pack_ENHMETAHEADER(void)
2710 {
2711 /* ENHMETAHEADER */
2712 TEST_TYPE_SIZE (ENHMETAHEADER, 108)
2713 TEST_TYPE_ALIGN (ENHMETAHEADER, 4)
2714 TEST_FIELD_SIZE (ENHMETAHEADER, iType, 4)
2715 TEST_FIELD_ALIGN (ENHMETAHEADER, iType, 4)
2716 TEST_FIELD_OFFSET(ENHMETAHEADER, iType, 0)
2717 TEST_FIELD_SIZE (ENHMETAHEADER, nSize, 4)
2718 TEST_FIELD_ALIGN (ENHMETAHEADER, nSize, 4)
2719 TEST_FIELD_OFFSET(ENHMETAHEADER, nSize, 4)
2720 TEST_FIELD_SIZE (ENHMETAHEADER, rclBounds, 16)
2721 TEST_FIELD_ALIGN (ENHMETAHEADER, rclBounds, 4)
2722 TEST_FIELD_OFFSET(ENHMETAHEADER, rclBounds, 8)
2723 TEST_FIELD_SIZE (ENHMETAHEADER, rclFrame, 16)
2724 TEST_FIELD_ALIGN (ENHMETAHEADER, rclFrame, 4)
2725 TEST_FIELD_OFFSET(ENHMETAHEADER, rclFrame, 24)
2726 TEST_FIELD_SIZE (ENHMETAHEADER, dSignature, 4)
2727 TEST_FIELD_ALIGN (ENHMETAHEADER, dSignature, 4)
2728 TEST_FIELD_OFFSET(ENHMETAHEADER, dSignature, 40)
2729 TEST_FIELD_SIZE (ENHMETAHEADER, nVersion, 4)
2730 TEST_FIELD_ALIGN (ENHMETAHEADER, nVersion, 4)
2731 TEST_FIELD_OFFSET(ENHMETAHEADER, nVersion, 44)
2732 TEST_FIELD_SIZE (ENHMETAHEADER, nBytes, 4)
2733 TEST_FIELD_ALIGN (ENHMETAHEADER, nBytes, 4)
2734 TEST_FIELD_OFFSET(ENHMETAHEADER, nBytes, 48)
2735 TEST_FIELD_SIZE (ENHMETAHEADER, nRecords, 4)
2736 TEST_FIELD_ALIGN (ENHMETAHEADER, nRecords, 4)
2737 TEST_FIELD_OFFSET(ENHMETAHEADER, nRecords, 52)
2738 TEST_FIELD_SIZE (ENHMETAHEADER, nHandles, 2)
2739 TEST_FIELD_ALIGN (ENHMETAHEADER, nHandles, 2)
2740 TEST_FIELD_OFFSET(ENHMETAHEADER, nHandles, 56)
2741 TEST_FIELD_SIZE (ENHMETAHEADER, sReserved, 2)
2742 TEST_FIELD_ALIGN (ENHMETAHEADER, sReserved, 2)
2743 TEST_FIELD_OFFSET(ENHMETAHEADER, sReserved, 58)
2744 TEST_FIELD_SIZE (ENHMETAHEADER, nDescription, 4)
2745 TEST_FIELD_ALIGN (ENHMETAHEADER, nDescription, 4)
2746 TEST_FIELD_OFFSET(ENHMETAHEADER, nDescription, 60)
2747 TEST_FIELD_SIZE (ENHMETAHEADER, offDescription, 4)
2748 TEST_FIELD_ALIGN (ENHMETAHEADER, offDescription, 4)
2749 TEST_FIELD_OFFSET(ENHMETAHEADER, offDescription, 64)
2750 TEST_FIELD_SIZE (ENHMETAHEADER, nPalEntries, 4)
2751 TEST_FIELD_ALIGN (ENHMETAHEADER, nPalEntries, 4)
2752 TEST_FIELD_OFFSET(ENHMETAHEADER, nPalEntries, 68)
2753 TEST_FIELD_SIZE (ENHMETAHEADER, szlDevice, 8)
2754 TEST_FIELD_ALIGN (ENHMETAHEADER, szlDevice, 4)
2755 TEST_FIELD_OFFSET(ENHMETAHEADER, szlDevice, 72)
2756 TEST_FIELD_SIZE (ENHMETAHEADER, szlMillimeters, 8)
2757 TEST_FIELD_ALIGN (ENHMETAHEADER, szlMillimeters, 4)
2758 TEST_FIELD_OFFSET(ENHMETAHEADER, szlMillimeters, 80)
2759 TEST_FIELD_SIZE (ENHMETAHEADER, cbPixelFormat, 4)
2760 TEST_FIELD_ALIGN (ENHMETAHEADER, cbPixelFormat, 4)
2761 TEST_FIELD_OFFSET(ENHMETAHEADER, cbPixelFormat, 88)
2762 TEST_FIELD_SIZE (ENHMETAHEADER, offPixelFormat, 4)
2763 TEST_FIELD_ALIGN (ENHMETAHEADER, offPixelFormat, 4)
2764 TEST_FIELD_OFFSET(ENHMETAHEADER, offPixelFormat, 92)
2765 TEST_FIELD_SIZE (ENHMETAHEADER, bOpenGL, 4)
2766 TEST_FIELD_ALIGN (ENHMETAHEADER, bOpenGL, 4)
2767 TEST_FIELD_OFFSET(ENHMETAHEADER, bOpenGL, 96)
2768 TEST_FIELD_SIZE (ENHMETAHEADER, szlMicrometers, 8)
2769 TEST_FIELD_ALIGN (ENHMETAHEADER, szlMicrometers, 4)
2770 TEST_FIELD_OFFSET(ENHMETAHEADER, szlMicrometers, 100)
2771 }
2772
2773 static void test_pack_ENHMETARECORD(void)
2774 {
2775 /* ENHMETARECORD */
2776 TEST_TYPE_SIZE (ENHMETARECORD, 12)
2777 TEST_TYPE_ALIGN (ENHMETARECORD, 4)
2778 TEST_FIELD_SIZE (ENHMETARECORD, iType, 4)
2779 TEST_FIELD_ALIGN (ENHMETARECORD, iType, 4)
2780 TEST_FIELD_OFFSET(ENHMETARECORD, iType, 0)
2781 TEST_FIELD_SIZE (ENHMETARECORD, nSize, 4)
2782 TEST_FIELD_ALIGN (ENHMETARECORD, nSize, 4)
2783 TEST_FIELD_OFFSET(ENHMETARECORD, nSize, 4)
2784 TEST_FIELD_SIZE (ENHMETARECORD, dParm, 4)
2785 TEST_FIELD_ALIGN (ENHMETARECORD, dParm, 4)
2786 TEST_FIELD_OFFSET(ENHMETARECORD, dParm, 8)
2787 }
2788
2789 static void test_pack_ENHMFENUMPROC(void)
2790 {
2791 /* ENHMFENUMPROC */
2792 TEST_TYPE_SIZE (ENHMFENUMPROC, 8)
2793 TEST_TYPE_ALIGN (ENHMFENUMPROC, 8)
2794 }
2795
2796 static void test_pack_ENUMLOGFONTA(void)
2797 {
2798 /* ENUMLOGFONTA */
2799 TEST_TYPE_SIZE (ENUMLOGFONTA, 156)
2800 TEST_TYPE_ALIGN (ENUMLOGFONTA, 4)
2801 TEST_FIELD_SIZE (ENUMLOGFONTA, elfLogFont, 60)
2802 TEST_FIELD_ALIGN (ENUMLOGFONTA, elfLogFont, 4)
2803 TEST_FIELD_OFFSET(ENUMLOGFONTA, elfLogFont, 0)
2804 TEST_FIELD_SIZE (ENUMLOGFONTA, elfFullName, 64)
2805 TEST_FIELD_ALIGN (ENUMLOGFONTA, elfFullName, 1)
2806 TEST_FIELD_OFFSET(ENUMLOGFONTA, elfFullName, 60)
2807 TEST_FIELD_SIZE (ENUMLOGFONTA, elfStyle, 32)
2808 TEST_FIELD_ALIGN (ENUMLOGFONTA, elfStyle, 1)
2809 TEST_FIELD_OFFSET(ENUMLOGFONTA, elfStyle, 124)
2810 }
2811
2812 static void test_pack_ENUMLOGFONTEXA(void)
2813 {
2814 /* ENUMLOGFONTEXA */
2815 TEST_TYPE_SIZE (ENUMLOGFONTEXA, 188)
2816 TEST_TYPE_ALIGN (ENUMLOGFONTEXA, 4)
2817 TEST_FIELD_SIZE (ENUMLOGFONTEXA, elfLogFont, 60)
2818 TEST_FIELD_ALIGN (ENUMLOGFONTEXA, elfLogFont, 4)
2819 TEST_FIELD_OFFSET(ENUMLOGFONTEXA, elfLogFont, 0)
2820 TEST_FIELD_SIZE (ENUMLOGFONTEXA, elfFullName, 64)
2821 TEST_FIELD_ALIGN (ENUMLOGFONTEXA, elfFullName, 1)
2822 TEST_FIELD_OFFSET(ENUMLOGFONTEXA, elfFullName, 60)
2823 TEST_FIELD_SIZE (ENUMLOGFONTEXA, elfStyle, 32)
2824 TEST_FIELD_ALIGN (ENUMLOGFONTEXA, elfStyle, 1)
2825 TEST_FIELD_OFFSET(ENUMLOGFONTEXA, elfStyle, 124)
2826 TEST_FIELD_SIZE (ENUMLOGFONTEXA, elfScript, 32)
2827 TEST_FIELD_ALIGN (ENUMLOGFONTEXA, elfScript, 1)
2828 TEST_FIELD_OFFSET(ENUMLOGFONTEXA, elfScript, 156)
2829 }
2830
2831 static void test_pack_ENUMLOGFONTEXW(void)
2832 {
2833 /* ENUMLOGFONTEXW */
2834 TEST_TYPE_SIZE (ENUMLOGFONTEXW, 348)
2835 TEST_TYPE_ALIGN (ENUMLOGFONTEXW, 4)
2836 TEST_FIELD_SIZE (ENUMLOGFONTEXW, elfLogFont, 92)
2837 TEST_FIELD_ALIGN (ENUMLOGFONTEXW, elfLogFont, 4)
2838 TEST_FIELD_OFFSET(ENUMLOGFONTEXW, elfLogFont, 0)
2839 TEST_FIELD_SIZE (ENUMLOGFONTEXW, elfFullName, 128)
2840 TEST_FIELD_ALIGN (ENUMLOGFONTEXW, elfFullName, 2)
2841 TEST_FIELD_OFFSET(ENUMLOGFONTEXW, elfFullName, 92)
2842 TEST_FIELD_SIZE (ENUMLOGFONTEXW, elfStyle, 64)
2843 TEST_FIELD_ALIGN (ENUMLOGFONTEXW, elfStyle, 2)
2844 TEST_FIELD_OFFSET(ENUMLOGFONTEXW, elfStyle, 220)
2845 TEST_FIELD_SIZE (ENUMLOGFONTEXW, elfScript, 64)
2846 TEST_FIELD_ALIGN (ENUMLOGFONTEXW, elfScript, 2)
2847 TEST_FIELD_OFFSET(ENUMLOGFONTEXW, elfScript, 284)
2848 }
2849
2850 static void test_pack_ENUMLOGFONTW(void)
2851 {
2852 /* ENUMLOGFONTW */
2853 TEST_TYPE_SIZE (ENUMLOGFONTW, 284)
2854 TEST_TYPE_ALIGN (ENUMLOGFONTW, 4)
2855 TEST_FIELD_SIZE (ENUMLOGFONTW, elfLogFont, 92)
2856 TEST_FIELD_ALIGN (ENUMLOGFONTW, elfLogFont, 4)
2857 TEST_FIELD_OFFSET(ENUMLOGFONTW, elfLogFont, 0)
2858 TEST_FIELD_SIZE (ENUMLOGFONTW, elfFullName, 128)
2859 TEST_FIELD_ALIGN (ENUMLOGFONTW, elfFullName, 2)
2860 TEST_FIELD_OFFSET(ENUMLOGFONTW, elfFullName, 92)
2861 TEST_FIELD_SIZE (ENUMLOGFONTW, elfStyle, 64)
2862 TEST_FIELD_ALIGN (ENUMLOGFONTW, elfStyle, 2)
2863 TEST_FIELD_OFFSET(ENUMLOGFONTW, elfStyle, 220)
2864 }
2865
2866 static void test_pack_EXTLOGFONTA(void)
2867 {
2868 /* EXTLOGFONTA */
2869 TEST_TYPE_SIZE (EXTLOGFONTA, 192)
2870 TEST_TYPE_ALIGN (EXTLOGFONTA, 4)
2871 TEST_FIELD_SIZE (EXTLOGFONTA, elfLogFont, 60)
2872 TEST_FIELD_ALIGN (EXTLOGFONTA, elfLogFont, 4)
2873 TEST_FIELD_OFFSET(EXTLOGFONTA, elfLogFont, 0)
2874 TEST_FIELD_SIZE (EXTLOGFONTA, elfFullName, 64)
2875 TEST_FIELD_ALIGN (EXTLOGFONTA, elfFullName, 1)
2876 TEST_FIELD_OFFSET(EXTLOGFONTA, elfFullName, 60)
2877 TEST_FIELD_SIZE (EXTLOGFONTA, elfStyle, 32)
2878 TEST_FIELD_ALIGN (EXTLOGFONTA, elfStyle, 1)
2879 TEST_FIELD_OFFSET(EXTLOGFONTA, elfStyle, 124)
2880 TEST_FIELD_SIZE (EXTLOGFONTA, elfVersion, 4)
2881 TEST_FIELD_ALIGN (EXTLOGFONTA, elfVersion, 4)
2882 TEST_FIELD_OFFSET(EXTLOGFONTA, elfVersion, 156)
2883 TEST_FIELD_SIZE (EXTLOGFONTA, elfStyleSize, 4)
2884 TEST_FIELD_ALIGN (EXTLOGFONTA, elfStyleSize, 4)
2885 TEST_FIELD_OFFSET(EXTLOGFONTA, elfStyleSize, 160)
2886 TEST_FIELD_SIZE (EXTLOGFONTA, elfMatch, 4)
2887 TEST_FIELD_ALIGN (EXTLOGFONTA, elfMatch, 4)
2888 TEST_FIELD_OFFSET(EXTLOGFONTA, elfMatch, 164)
2889 TEST_FIELD_SIZE (EXTLOGFONTA, elfReserved, 4)
2890 TEST_FIELD_ALIGN (EXTLOGFONTA, elfReserved, 4)
2891 TEST_FIELD_OFFSET(EXTLOGFONTA, elfReserved, 168)
2892 TEST_FIELD_SIZE (EXTLOGFONTA, elfVendorId, 4)
2893 TEST_FIELD_ALIGN (EXTLOGFONTA, elfVendorId, 1)
2894 TEST_FIELD_OFFSET(EXTLOGFONTA, elfVendorId, 172)
2895 TEST_FIELD_SIZE (EXTLOGFONTA, elfCulture, 4)
2896 TEST_FIELD_ALIGN (EXTLOGFONTA, elfCulture, 4)
2897 TEST_FIELD_OFFSET(EXTLOGFONTA, elfCulture, 176)
2898 TEST_FIELD_SIZE (EXTLOGFONTA, elfPanose, 10)
2899 TEST_FIELD_ALIGN (EXTLOGFONTA, elfPanose, 1)
2900 TEST_FIELD_OFFSET(EXTLOGFONTA, elfPanose, 180)
2901 }
2902
2903 static void test_pack_EXTLOGFONTW(void)
2904 {
2905 /* EXTLOGFONTW */
2906 TEST_TYPE_SIZE (EXTLOGFONTW, 320)
2907 TEST_TYPE_ALIGN (EXTLOGFONTW, 4)
2908 TEST_FIELD_SIZE (EXTLOGFONTW, elfLogFont, 92)
2909 TEST_FIELD_ALIGN (EXTLOGFONTW, elfLogFont, 4)
2910 TEST_FIELD_OFFSET(EXTLOGFONTW, elfLogFont, 0)
2911 TEST_FIELD_SIZE (EXTLOGFONTW, elfFullName, 128)