/* File generated automatically from tools/winapi/test.dat; do not edit! */ /* This file can be copied, modified and distributed without restriction. */ /* * Unit tests for data structure packing */ #include #include "wine/test.h" #include "basetsd.h" #include "winnt.h" #include "windef.h" #include "wingdi.h" /*********************************************************************** * Windows API extension */ #if (_MSC_VER >= 1300) && defined(__cplusplus) # define FIELD_ALIGNMENT(type, field) __alignof(((type*)0)->field) #elif defined(__GNUC__) # define FIELD_ALIGNMENT(type, field) __alignof__(((type*)0)->field) #else /* FIXME: Not sure if is possible to do without compiler extension */ #endif /*********************************************************************** * Test helper macros */ #ifdef FIELD_ALIGNMENT # define TEST_FIELD_ALIGNMENT(type, field, align) \ ok(FIELD_ALIGNMENT(type, field) == align, \ "FIELD_ALIGNMENT(" #type ", " #field ") == %d (expected " #align ")", \ FIELD_ALIGNMENT(type, field)) #else # define TEST_FIELD_ALIGNMENT(type, field, align) do { } while (0) #endif #define TEST_FIELD_OFFSET(type, field, offset) \ ok(FIELD_OFFSET(type, field) == offset, \ "FIELD_OFFSET(" #type ", " #field ") == %ld (expected " #offset ")", \ FIELD_OFFSET(type, field)) #define TEST_TYPE_ALIGNMENT(type, align) \ ok(TYPE_ALIGNMENT(type) == align, "TYPE_ALIGNMENT(" #type ") == %d (expected " #align ")", TYPE_ALIGNMENT(type)) #define TEST_TYPE_SIZE(type, size) \ ok(sizeof(type) == size, "sizeof(" #type ") == %d (expected " #size ")", sizeof(type)) /*********************************************************************** * Test macros */ #define TEST_FIELD(type, field_type, field_name, field_offset, field_size, field_align) \ TEST_TYPE_SIZE(field_type, field_size); \ TEST_FIELD_ALIGNMENT(type, field_name, field_align); \ TEST_FIELD_OFFSET(type, field_name, field_offset); \ #define TEST_TYPE(type, size, align) \ TEST_TYPE_ALIGNMENT(type, align); \ TEST_TYPE_SIZE(type, size) void test_pack(void) { /* ABC (pack 4) */ TEST_TYPE(ABC, 12, 4); TEST_FIELD(ABC, INT, abcA, 0, 4, 4); TEST_FIELD(ABC, UINT, abcB, 4, 4, 4); TEST_FIELD(ABC, INT, abcC, 8, 4, 4); /* ABCFLOAT (pack 4) */ TEST_TYPE(ABCFLOAT, 12, 4); TEST_FIELD(ABCFLOAT, FLOAT, abcfA, 0, 4, 4); TEST_FIELD(ABCFLOAT, FLOAT, abcfB, 4, 4, 4); TEST_FIELD(ABCFLOAT, FLOAT, abcfC, 8, 4, 4); /* BITMAP (pack 4) */ TEST_TYPE(BITMAP, 24, 4); TEST_FIELD(BITMAP, INT, bmType, 0, 4, 4); TEST_FIELD(BITMAP, INT, bmWidth, 4, 4, 4); TEST_FIELD(BITMAP, INT, bmHeight, 8, 4, 4); TEST_FIELD(BITMAP, INT, bmWidthBytes, 12, 4, 4); TEST_FIELD(BITMAP, WORD, bmPlanes, 16, 2, 2); TEST_FIELD(BITMAP, WORD, bmBitsPixel, 18, 2, 2); TEST_FIELD(BITMAP, LPVOID, bmBits, 20, 4, 4); /* BITMAPCOREHEADER (pack 4) */ TEST_TYPE(BITMAPCOREHEADER, 12, 4); TEST_FIELD(BITMAPCOREHEADER, DWORD, bcSize, 0, 4, 4); TEST_FIELD(BITMAPCOREHEADER, WORD, bcWidth, 4, 2, 2); TEST_FIELD(BITMAPCOREHEADER, WORD, bcHeight, 6, 2, 2); TEST_FIELD(BITMAPCOREHEADER, WORD, bcPlanes, 8, 2, 2); TEST_FIELD(BITMAPCOREHEADER, WORD, bcBitCount, 10, 2, 2); /* BITMAPCOREINFO (pack 4) */ TEST_TYPE(BITMAPCOREINFO, 16, 4); TEST_FIELD(BITMAPCOREINFO, BITMAPCOREHEADER, bmciHeader, 0, 12, 4); TEST_FIELD(BITMAPCOREINFO, RGBTRIPLE[1], bmciColors, 12, 3, 1); /* BITMAPFILEHEADER (pack 2) */ TEST_TYPE(BITMAPFILEHEADER, 14, 2); TEST_FIELD(BITMAPFILEHEADER, WORD, bfType, 0, 2, 2); TEST_FIELD(BITMAPFILEHEADER, DWORD, bfSize, 2, 4, 2); TEST_FIELD(BITMAPFILEHEADER, WORD, bfReserved1, 6, 2, 2); TEST_FIELD(BITMAPFILEHEADER, WORD, bfReserved2, 8, 2, 2); TEST_FIELD(BITMAPFILEHEADER, DWORD, bfOffBits, 10, 4, 2); /* BITMAPINFO (pack 4) */ TEST_TYPE(BITMAPINFO, 44, 4); TEST_FIELD(BITMAPINFO, BITMAPINFOHEADER, bmiHeader, 0, 40, 4); TEST_FIELD(BITMAPINFO, RGBQUAD[1], bmiColors, 40, 4, 1); /* BITMAPINFOHEADER (pack 4) */ TEST_TYPE(BITMAPINFOHEADER, 40, 4); TEST_FIELD(BITMAPINFOHEADER, DWORD, biSize, 0, 4, 4); TEST_FIELD(BITMAPINFOHEADER, LONG, biWidth, 4, 4, 4); TEST_FIELD(BITMAPINFOHEADER, LONG, biHeight, 8, 4, 4); TEST_FIELD(BITMAPINFOHEADER, WORD, biPlanes, 12, 2, 2); TEST_FIELD(BITMAPINFOHEADER, WORD, biBitCount, 14, 2, 2); TEST_FIELD(BITMAPINFOHEADER, DWORD, biCompression, 16, 4, 4); TEST_FIELD(BITMAPINFOHEADER, DWORD, biSizeImage, 20, 4, 4); TEST_FIELD(BITMAPINFOHEADER, LONG, biXPelsPerMeter, 24, 4, 4); TEST_FIELD(BITMAPINFOHEADER, LONG, biYPelsPerMeter, 28, 4, 4); TEST_FIELD(BITMAPINFOHEADER, DWORD, biClrUsed, 32, 4, 4); TEST_FIELD(BITMAPINFOHEADER, DWORD, biClrImportant, 36, 4, 4); /* BITMAPV4HEADER (pack 4) */ TEST_TYPE(BITMAPV4HEADER, 108, 4); TEST_FIELD(BITMAPV4HEADER, DWORD, bV4Size, 0, 4, 4); TEST_FIELD(BITMAPV4HEADER, LONG, bV4Width, 4, 4, 4); TEST_FIELD(BITMAPV4HEADER, LONG, bV4Height, 8, 4, 4); TEST_FIELD(BITMAPV4HEADER, WORD, bV4Planes, 12, 2, 2); TEST_FIELD(BITMAPV4HEADER, WORD, bV4BitCount, 14, 2, 2); TEST_FIELD(BITMAPV4HEADER, DWORD, bV4Compression, 16, 4, 4); TEST_FIELD(BITMAPV4HEADER, DWORD, bV4SizeImage, 20, 4, 4); TEST_FIELD(BITMAPV4HEADER, LONG, bV4XPelsPerMeter, 24, 4, 4); TEST_FIELD(BITMAPV4HEADER, LONG, bV4YPelsPerMeter, 28, 4, 4); TEST_FIELD(BITMAPV4HEADER, DWORD, bV4ClrUsed, 32, 4, 4); TEST_FIELD(BITMAPV4HEADER, DWORD, bV4ClrImportant, 36, 4, 4); TEST_FIELD(BITMAPV4HEADER, DWORD, bV4RedMask, 40, 4, 4); TEST_FIELD(BITMAPV4HEADER, DWORD, bV4GreenMask, 44, 4, 4); TEST_FIELD(BITMAPV4HEADER, DWORD, bV4BlueMask, 48, 4, 4); TEST_FIELD(BITMAPV4HEADER, DWORD, bV4AlphaMask, 52, 4, 4); TEST_FIELD(BITMAPV4HEADER, DWORD, bV4CSType, 56, 4, 4); TEST_FIELD(BITMAPV4HEADER, CIEXYZTRIPLE, bV4Endpoints, 60, 36, 4); TEST_FIELD(BITMAPV4HEADER, DWORD, bV4GammaRed, 96, 4, 4); TEST_FIELD(BITMAPV4HEADER, DWORD, bV4GammaGreen, 100, 4, 4); TEST_FIELD(BITMAPV4HEADER, DWORD, bV4GammaBlue, 104, 4, 4); /* BITMAPV5HEADER (pack 4) */ TEST_TYPE(BITMAPV5HEADER, 124, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5Size, 0, 4, 4); TEST_FIELD(BITMAPV5HEADER, LONG, bV5Width, 4, 4, 4); TEST_FIELD(BITMAPV5HEADER, LONG, bV5Height, 8, 4, 4); TEST_FIELD(BITMAPV5HEADER, WORD, bV5Planes, 12, 2, 2); TEST_FIELD(BITMAPV5HEADER, WORD, bV5BitCount, 14, 2, 2); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5Compression, 16, 4, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5SizeImage, 20, 4, 4); TEST_FIELD(BITMAPV5HEADER, LONG, bV5XPelsPerMeter, 24, 4, 4); TEST_FIELD(BITMAPV5HEADER, LONG, bV5YPelsPerMeter, 28, 4, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5ClrUsed, 32, 4, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5ClrImportant, 36, 4, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5RedMask, 40, 4, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5GreenMask, 44, 4, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5BlueMask, 48, 4, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5AlphaMask, 52, 4, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5CSType, 56, 4, 4); TEST_FIELD(BITMAPV5HEADER, CIEXYZTRIPLE, bV5Endpoints, 60, 36, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5GammaRed, 96, 4, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5GammaGreen, 100, 4, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5GammaBlue, 104, 4, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5Intent, 108, 4, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5ProfileData, 112, 4, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5ProfileSize, 116, 4, 4); TEST_FIELD(BITMAPV5HEADER, DWORD, bV5Reserved, 120, 4, 4); /* BLENDFUNCTION (pack 4) */ TEST_TYPE(BLENDFUNCTION, 4, 1); TEST_FIELD(BLENDFUNCTION, BYTE, BlendOp, 0, 1, 1); TEST_FIELD(BLENDFUNCTION, BYTE, BlendFlags, 1, 1, 1); TEST_FIELD(BLENDFUNCTION, BYTE, SourceConstantAlpha, 2, 1, 1); TEST_FIELD(BLENDFUNCTION, BYTE, AlphaFormat, 3, 1, 1); /* CHARSETINFO (pack 4) */ TEST_TYPE(CHARSETINFO, 32, 4); TEST_FIELD(CHARSETINFO, UINT, ciCharset, 0, 4, 4); TEST_FIELD(CHARSETINFO, UINT, ciACP, 4, 4, 4); TEST_FIELD(CHARSETINFO, FONTSIGNATURE, fs, 8, 24, 4); /* CIEXYZ (pack 4) */ TEST_TYPE(CIEXYZ, 12, 4); TEST_FIELD(CIEXYZ, FXPT2DOT30, ciexyzX, 0, 4, 4); TEST_FIELD(CIEXYZ, FXPT2DOT30, ciexyzY, 4, 4, 4); TEST_FIELD(CIEXYZ, FXPT2DOT30, ciexyzZ, 8, 4, 4); /* CIEXYZTRIPLE (pack 4) */ TEST_TYPE(CIEXYZTRIPLE, 36, 4); TEST_FIELD(CIEXYZTRIPLE, CIEXYZ, ciexyzRed, 0, 12, 4); TEST_FIELD(CIEXYZTRIPLE, CIEXYZ, ciexyzGreen, 12, 12, 4); TEST_FIELD(CIEXYZTRIPLE, CIEXYZ, ciexyzBlue, 24, 12, 4); /* COLORADJUSTMENT (pack 4) */ TEST_TYPE(COLORADJUSTMENT, 24, 2); TEST_FIELD(COLORADJUSTMENT, WORD, caSize, 0, 2, 2); TEST_FIELD(COLORADJUSTMENT, WORD, caFlags, 2, 2, 2); TEST_FIELD(COLORADJUSTMENT, WORD, caIlluminantIndex, 4, 2, 2); TEST_FIELD(COLORADJUSTMENT, WORD, caRedGamma, 6, 2, 2); TEST_FIELD(COLORADJUSTMENT, WORD, caGreenGamma, 8, 2, 2); TEST_FIELD(COLORADJUSTMENT, WORD, caBlueGamma, 10, 2, 2); TEST_FIELD(COLORADJUSTMENT, WORD, caReferenceBlack, 12, 2, 2); TEST_FIELD(COLORADJUSTMENT, WORD, caReferenceWhite, 14, 2, 2); TEST_FIELD(COLORADJUSTMENT, SHORT, caContrast, 16, 2, 2); TEST_FIELD(COLORADJUSTMENT, SHORT, caBrightness, 18, 2, 2); TEST_FIELD(COLORADJUSTMENT, SHORT, caColorfulness, 20, 2, 2); TEST_FIELD(COLORADJUSTMENT, SHORT, caRedGreenTint, 22, 2, 2); /* DIBSECTION (pack 4) */ TEST_TYPE(DIBSECTION, 84, 4); TEST_FIELD(DIBSECTION, BITMAP, dsBm, 0, 24, 4); TEST_FIELD(DIBSECTION, BITMAPINFOHEADER, dsBmih, 24, 40, 4); TEST_FIELD(DIBSECTION, DWORD[3], dsBitfields, 64, 12, 4); TEST_FIELD(DIBSECTION, HANDLE, dshSection, 76, 4, 4); TEST_FIELD(DIBSECTION, DWORD, dsOffset, 80, 4, 4); /* DISPLAY_DEVICEA (pack 4) */ TEST_TYPE(DISPLAY_DEVICEA, 424, 4); TEST_FIELD(DISPLAY_DEVICEA, DWORD, cb, 0, 4, 4); TEST_FIELD(DISPLAY_DEVICEA, CHAR[32], DeviceName, 4, 32, 1); TEST_FIELD(DISPLAY_DEVICEA, CHAR[128], DeviceString, 36, 128, 1); TEST_FIELD(DISPLAY_DEVICEA, DWORD, StateFlags, 164, 4, 4); TEST_FIELD(DISPLAY_DEVICEA, CHAR[128], DeviceID, 168, 128, 1); TEST_FIELD(DISPLAY_DEVICEA, CHAR[128], DeviceKey, 296, 128, 1); /* DISPLAY_DEVICEW (pack 4) */ TEST_TYPE(DISPLAY_DEVICEW, 840, 4); TEST_FIELD(DISPLAY_DEVICEW, DWORD, cb, 0, 4, 4); TEST_FIELD(DISPLAY_DEVICEW, WCHAR[32], DeviceName, 4, 64, 2); TEST_FIELD(DISPLAY_DEVICEW, WCHAR[128], DeviceString, 68, 256, 2); TEST_FIELD(DISPLAY_DEVICEW, DWORD, StateFlags, 324, 4, 4); TEST_FIELD(DISPLAY_DEVICEW, WCHAR[128], DeviceID, 328, 256, 2); TEST_FIELD(DISPLAY_DEVICEW, WCHAR[128], DeviceKey, 584, 256, 2); /* DOCINFOA (pack 4) */ TEST_TYPE(DOCINFOA, 20, 4); TEST_FIELD(DOCINFOA, INT, cbSize, 0, 4, 4); TEST_FIELD(DOCINFOA, LPCSTR, lpszDocName, 4, 4, 4); TEST_FIELD(DOCINFOA, LPCSTR, lpszOutput, 8, 4, 4); TEST_FIELD(DOCINFOA, LPCSTR, lpszDatatype, 12, 4, 4); TEST_FIELD(DOCINFOA, DWORD, fwType, 16, 4, 4); /* DOCINFOW (pack 4) */ TEST_TYPE(DOCINFOW, 20, 4); TEST_FIELD(DOCINFOW, INT, cbSize, 0, 4, 4); TEST_FIELD(DOCINFOW, LPCWSTR, lpszDocName, 4, 4, 4); TEST_FIELD(DOCINFOW, LPCWSTR, lpszOutput, 8, 4, 4); TEST_FIELD(DOCINFOW, LPCWSTR, lpszDatatype, 12, 4, 4); TEST_FIELD(DOCINFOW, DWORD, fwType, 16, 4, 4); /* EMR (pack 4) */ TEST_TYPE(EMR, 8, 4); TEST_FIELD(EMR, DWORD, iType, 0, 4, 4); TEST_FIELD(EMR, DWORD, nSize, 4, 4, 4); /* EMRABORTPATH (pack 4) */ TEST_TYPE(EMRABORTPATH, 8, 4); TEST_FIELD(EMRABORTPATH, EMR, emr, 0, 8, 4); /* EMRANGLEARC (pack 4) */ TEST_TYPE(EMRANGLEARC, 28, 4); TEST_FIELD(EMRANGLEARC, EMR, emr, 0, 8, 4); TEST_FIELD(EMRANGLEARC, POINTL, ptlCenter, 8, 8, 4); TEST_FIELD(EMRANGLEARC, DWORD, nRadius, 16, 4, 4); TEST_FIELD(EMRANGLEARC, FLOAT, eStartAngle, 20, 4, 4); TEST_FIELD(EMRANGLEARC, FLOAT, eSweepAngle, 24, 4, 4); /* EMRARC (pack 4) */ TEST_TYPE(EMRARC, 40, 4); TEST_FIELD(EMRARC, EMR, emr, 0, 8, 4); TEST_FIELD(EMRARC, RECTL, rclBox, 8, 16, 4); TEST_FIELD(EMRARC, POINTL, ptlStart, 24, 8, 4); TEST_FIELD(EMRARC, POINTL, ptlEnd, 32, 8, 4); /* EMRBITBLT (pack 4) */ TEST_TYPE(EMRBITBLT, 100, 4); TEST_FIELD(EMRBITBLT, EMR, emr, 0, 8, 4); TEST_FIELD(EMRBITBLT, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMRBITBLT, LONG, xDest, 24, 4, 4); TEST_FIELD(EMRBITBLT, LONG, yDest, 28, 4, 4); TEST_FIELD(EMRBITBLT, LONG, cxDest, 32, 4, 4); TEST_FIELD(EMRBITBLT, LONG, cyDest, 36, 4, 4); TEST_FIELD(EMRBITBLT, DWORD, dwRop, 40, 4, 4); TEST_FIELD(EMRBITBLT, LONG, xSrc, 44, 4, 4); TEST_FIELD(EMRBITBLT, LONG, ySrc, 48, 4, 4); TEST_FIELD(EMRBITBLT, XFORM, xformSrc, 52, 24, 4); TEST_FIELD(EMRBITBLT, COLORREF, crBkColorSrc, 76, 4, 4); TEST_FIELD(EMRBITBLT, DWORD, iUsageSrc, 80, 4, 4); TEST_FIELD(EMRBITBLT, DWORD, offBmiSrc, 84, 4, 4); TEST_FIELD(EMRBITBLT, DWORD, cbBmiSrc, 88, 4, 4); TEST_FIELD(EMRBITBLT, DWORD, offBitsSrc, 92, 4, 4); TEST_FIELD(EMRBITBLT, DWORD, cbBitsSrc, 96, 4, 4); /* EMRCREATEBRUSHINDIRECT (pack 4) */ TEST_TYPE(EMRCREATEBRUSHINDIRECT, 24, 4); TEST_FIELD(EMRCREATEBRUSHINDIRECT, EMR, emr, 0, 8, 4); TEST_FIELD(EMRCREATEBRUSHINDIRECT, DWORD, ihBrush, 8, 4, 4); TEST_FIELD(EMRCREATEBRUSHINDIRECT, LOGBRUSH, lb, 12, 12, 4); /* EMRCREATECOLORSPACE (pack 4) */ TEST_TYPE(EMRCREATECOLORSPACE, 340, 4); TEST_FIELD(EMRCREATECOLORSPACE, EMR, emr, 0, 8, 4); TEST_FIELD(EMRCREATECOLORSPACE, DWORD, ihCS, 8, 4, 4); TEST_FIELD(EMRCREATECOLORSPACE, LOGCOLORSPACEA, lcs, 12, 328, 4); /* EMRCREATECOLORSPACEW (pack 4) */ TEST_TYPE(EMRCREATECOLORSPACEW, 612, 4); TEST_FIELD(EMRCREATECOLORSPACEW, EMR, emr, 0, 8, 4); TEST_FIELD(EMRCREATECOLORSPACEW, DWORD, ihCS, 8, 4, 4); TEST_FIELD(EMRCREATECOLORSPACEW, LOGCOLORSPACEW, lcs, 12, 588, 4); TEST_FIELD(EMRCREATECOLORSPACEW, DWORD, dwFlags, 600, 4, 4); TEST_FIELD(EMRCREATECOLORSPACEW, DWORD, cbData, 604, 4, 4); TEST_FIELD(EMRCREATECOLORSPACEW, BYTE[1], Data, 608, 1, 1); /* EMRCREATEDIBPATTERNBRUSHPT (pack 4) */ TEST_TYPE(EMRCREATEDIBPATTERNBRUSHPT, 32, 4); TEST_FIELD(EMRCREATEDIBPATTERNBRUSHPT, EMR, emr, 0, 8, 4); TEST_FIELD(EMRCREATEDIBPATTERNBRUSHPT, DWORD, ihBrush, 8, 4, 4); TEST_FIELD(EMRCREATEDIBPATTERNBRUSHPT, DWORD, iUsage, 12, 4, 4); TEST_FIELD(EMRCREATEDIBPATTERNBRUSHPT, DWORD, offBmi, 16, 4, 4); TEST_FIELD(EMRCREATEDIBPATTERNBRUSHPT, DWORD, cbBmi, 20, 4, 4); TEST_FIELD(EMRCREATEDIBPATTERNBRUSHPT, DWORD, offBits, 24, 4, 4); TEST_FIELD(EMRCREATEDIBPATTERNBRUSHPT, DWORD, cbBits, 28, 4, 4); /* EMRCREATEMONOBRUSH (pack 4) */ TEST_TYPE(EMRCREATEMONOBRUSH, 32, 4); TEST_FIELD(EMRCREATEMONOBRUSH, EMR, emr, 0, 8, 4); TEST_FIELD(EMRCREATEMONOBRUSH, DWORD, ihBrush, 8, 4, 4); TEST_FIELD(EMRCREATEMONOBRUSH, DWORD, iUsage, 12, 4, 4); TEST_FIELD(EMRCREATEMONOBRUSH, DWORD, offBmi, 16, 4, 4); TEST_FIELD(EMRCREATEMONOBRUSH, DWORD, cbBmi, 20, 4, 4); TEST_FIELD(EMRCREATEMONOBRUSH, DWORD, offBits, 24, 4, 4); TEST_FIELD(EMRCREATEMONOBRUSH, DWORD, cbBits, 28, 4, 4); /* EMRCREATEPEN (pack 4) */ TEST_TYPE(EMRCREATEPEN, 28, 4); TEST_FIELD(EMRCREATEPEN, EMR, emr, 0, 8, 4); TEST_FIELD(EMRCREATEPEN, DWORD, ihPen, 8, 4, 4); TEST_FIELD(EMRCREATEPEN, LOGPEN, lopn, 12, 16, 4); /* EMRDELETECOLORSPACE (pack 4) */ TEST_TYPE(EMRDELETECOLORSPACE, 12, 4); TEST_FIELD(EMRDELETECOLORSPACE, EMR, emr, 0, 8, 4); TEST_FIELD(EMRDELETECOLORSPACE, DWORD, ihCS, 8, 4, 4); /* EMRDELETEOBJECT (pack 4) */ TEST_TYPE(EMRDELETEOBJECT, 12, 4); TEST_FIELD(EMRDELETEOBJECT, EMR, emr, 0, 8, 4); TEST_FIELD(EMRDELETEOBJECT, DWORD, ihObject, 8, 4, 4); /* EMRELLIPSE (pack 4) */ TEST_TYPE(EMRELLIPSE, 24, 4); TEST_FIELD(EMRELLIPSE, EMR, emr, 0, 8, 4); TEST_FIELD(EMRELLIPSE, RECTL, rclBox, 8, 16, 4); /* EMREOF (pack 4) */ TEST_TYPE(EMREOF, 20, 4); TEST_FIELD(EMREOF, EMR, emr, 0, 8, 4); TEST_FIELD(EMREOF, DWORD, nPalEntries, 8, 4, 4); TEST_FIELD(EMREOF, DWORD, offPalEntries, 12, 4, 4); TEST_FIELD(EMREOF, DWORD, nSizeLast, 16, 4, 4); /* EMREXCLUDECLIPRECT (pack 4) */ TEST_TYPE(EMREXCLUDECLIPRECT, 24, 4); TEST_FIELD(EMREXCLUDECLIPRECT, EMR, emr, 0, 8, 4); TEST_FIELD(EMREXCLUDECLIPRECT, RECTL, rclClip, 8, 16, 4); /* EMREXTCREATEFONTINDIRECTW (pack 4) */ TEST_TYPE(EMREXTCREATEFONTINDIRECTW, 332, 4); TEST_FIELD(EMREXTCREATEFONTINDIRECTW, EMR, emr, 0, 8, 4); TEST_FIELD(EMREXTCREATEFONTINDIRECTW, DWORD, ihFont, 8, 4, 4); TEST_FIELD(EMREXTCREATEFONTINDIRECTW, EXTLOGFONTW, elfw, 12, 320, 4); /* EMREXTCREATEPEN (pack 4) */ TEST_TYPE(EMREXTCREATEPEN, 56, 4); TEST_FIELD(EMREXTCREATEPEN, EMR, emr, 0, 8, 4); TEST_FIELD(EMREXTCREATEPEN, DWORD, ihPen, 8, 4, 4); TEST_FIELD(EMREXTCREATEPEN, DWORD, offBmi, 12, 4, 4); TEST_FIELD(EMREXTCREATEPEN, DWORD, cbBmi, 16, 4, 4); TEST_FIELD(EMREXTCREATEPEN, DWORD, offBits, 20, 4, 4); TEST_FIELD(EMREXTCREATEPEN, DWORD, cbBits, 24, 4, 4); TEST_FIELD(EMREXTCREATEPEN, EXTLOGPEN, elp, 28, 28, 4); /* EMREXTFLOODFILL (pack 4) */ TEST_TYPE(EMREXTFLOODFILL, 24, 4); TEST_FIELD(EMREXTFLOODFILL, EMR, emr, 0, 8, 4); TEST_FIELD(EMREXTFLOODFILL, POINTL, ptlStart, 8, 8, 4); TEST_FIELD(EMREXTFLOODFILL, COLORREF, crColor, 16, 4, 4); TEST_FIELD(EMREXTFLOODFILL, DWORD, iMode, 20, 4, 4); /* EMREXTSELECTCLIPRGN (pack 4) */ TEST_TYPE(EMREXTSELECTCLIPRGN, 20, 4); TEST_FIELD(EMREXTSELECTCLIPRGN, EMR, emr, 0, 8, 4); TEST_FIELD(EMREXTSELECTCLIPRGN, DWORD, cbRgnData, 8, 4, 4); TEST_FIELD(EMREXTSELECTCLIPRGN, DWORD, iMode, 12, 4, 4); TEST_FIELD(EMREXTSELECTCLIPRGN, BYTE[1], RgnData, 16, 1, 1); /* EMREXTTEXTOUTA (pack 4) */ TEST_TYPE(EMREXTTEXTOUTA, 76, 4); TEST_FIELD(EMREXTTEXTOUTA, EMR, emr, 0, 8, 4); TEST_FIELD(EMREXTTEXTOUTA, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMREXTTEXTOUTA, DWORD, iGraphicsMode, 24, 4, 4); TEST_FIELD(EMREXTTEXTOUTA, FLOAT, exScale, 28, 4, 4); TEST_FIELD(EMREXTTEXTOUTA, FLOAT, eyScale, 32, 4, 4); TEST_FIELD(EMREXTTEXTOUTA, EMRTEXT, emrtext, 36, 40, 4); /* EMRFILLPATH (pack 4) */ TEST_TYPE(EMRFILLPATH, 24, 4); TEST_FIELD(EMRFILLPATH, EMR, emr, 0, 8, 4); TEST_FIELD(EMRFILLPATH, RECTL, rclBounds, 8, 16, 4); /* EMRFILLRGN (pack 4) */ TEST_TYPE(EMRFILLRGN, 36, 4); TEST_FIELD(EMRFILLRGN, EMR, emr, 0, 8, 4); TEST_FIELD(EMRFILLRGN, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMRFILLRGN, DWORD, cbRgnData, 24, 4, 4); TEST_FIELD(EMRFILLRGN, DWORD, ihBrush, 28, 4, 4); TEST_FIELD(EMRFILLRGN, BYTE[1], RgnData, 32, 1, 1); /* EMRFORMAT (pack 4) */ TEST_TYPE(EMRFORMAT, 16, 4); TEST_FIELD(EMRFORMAT, DWORD, signature, 0, 4, 4); TEST_FIELD(EMRFORMAT, DWORD, nVersion, 4, 4, 4); TEST_FIELD(EMRFORMAT, DWORD, cbData, 8, 4, 4); TEST_FIELD(EMRFORMAT, DWORD, offData, 12, 4, 4); /* EMRFRAMERGN (pack 4) */ TEST_TYPE(EMRFRAMERGN, 44, 4); TEST_FIELD(EMRFRAMERGN, EMR, emr, 0, 8, 4); TEST_FIELD(EMRFRAMERGN, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMRFRAMERGN, DWORD, cbRgnData, 24, 4, 4); TEST_FIELD(EMRFRAMERGN, DWORD, ihBrush, 28, 4, 4); TEST_FIELD(EMRFRAMERGN, SIZEL, szlStroke, 32, 8, 4); TEST_FIELD(EMRFRAMERGN, BYTE[1], RgnData, 40, 1, 1); /* EMRGDICOMMENT (pack 4) */ TEST_TYPE(EMRGDICOMMENT, 16, 4); TEST_FIELD(EMRGDICOMMENT, EMR, emr, 0, 8, 4); TEST_FIELD(EMRGDICOMMENT, DWORD, cbData, 8, 4, 4); TEST_FIELD(EMRGDICOMMENT, BYTE[1], Data, 12, 1, 1); /* EMRGLSBOUNDEDRECORD (pack 4) */ TEST_TYPE(EMRGLSBOUNDEDRECORD, 32, 4); TEST_FIELD(EMRGLSBOUNDEDRECORD, EMR, emr, 0, 8, 4); TEST_FIELD(EMRGLSBOUNDEDRECORD, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMRGLSBOUNDEDRECORD, DWORD, cbData, 24, 4, 4); TEST_FIELD(EMRGLSBOUNDEDRECORD, BYTE[1], Data, 28, 1, 1); /* EMRGLSRECORD (pack 4) */ TEST_TYPE(EMRGLSRECORD, 16, 4); TEST_FIELD(EMRGLSRECORD, EMR, emr, 0, 8, 4); TEST_FIELD(EMRGLSRECORD, DWORD, cbData, 8, 4, 4); TEST_FIELD(EMRGLSRECORD, BYTE[1], Data, 12, 1, 1); /* EMRINVERTRGN (pack 4) */ TEST_TYPE(EMRINVERTRGN, 32, 4); TEST_FIELD(EMRINVERTRGN, EMR, emr, 0, 8, 4); TEST_FIELD(EMRINVERTRGN, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMRINVERTRGN, DWORD, cbRgnData, 24, 4, 4); TEST_FIELD(EMRINVERTRGN, BYTE[1], RgnData, 28, 1, 1); /* EMRLINETO (pack 4) */ TEST_TYPE(EMRLINETO, 16, 4); TEST_FIELD(EMRLINETO, EMR, emr, 0, 8, 4); TEST_FIELD(EMRLINETO, POINTL, ptl, 8, 8, 4); /* EMRMASKBLT (pack 4) */ TEST_TYPE(EMRMASKBLT, 128, 4); TEST_FIELD(EMRMASKBLT, EMR, emr, 0, 8, 4); TEST_FIELD(EMRMASKBLT, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMRMASKBLT, LONG, xDest, 24, 4, 4); TEST_FIELD(EMRMASKBLT, LONG, yDest, 28, 4, 4); TEST_FIELD(EMRMASKBLT, LONG, cxDest, 32, 4, 4); TEST_FIELD(EMRMASKBLT, LONG, cyDest, 36, 4, 4); TEST_FIELD(EMRMASKBLT, DWORD, dwRop, 40, 4, 4); TEST_FIELD(EMRMASKBLT, LONG, xSrc, 44, 4, 4); TEST_FIELD(EMRMASKBLT, LONG, ySrc, 48, 4, 4); TEST_FIELD(EMRMASKBLT, XFORM, xformSrc, 52, 24, 4); TEST_FIELD(EMRMASKBLT, COLORREF, crBkColorSrc, 76, 4, 4); TEST_FIELD(EMRMASKBLT, DWORD, iUsageSrc, 80, 4, 4); TEST_FIELD(EMRMASKBLT, DWORD, offBmiSrc, 84, 4, 4); TEST_FIELD(EMRMASKBLT, DWORD, cbBmiSrc, 88, 4, 4); TEST_FIELD(EMRMASKBLT, DWORD, offBitsSrc, 92, 4, 4); TEST_FIELD(EMRMASKBLT, DWORD, cbBitsSrc, 96, 4, 4); TEST_FIELD(EMRMASKBLT, LONG, xMask, 100, 4, 4); TEST_FIELD(EMRMASKBLT, LONG, yMask, 104, 4, 4); TEST_FIELD(EMRMASKBLT, DWORD, iUsageMask, 108, 4, 4); TEST_FIELD(EMRMASKBLT, DWORD, offBmiMask, 112, 4, 4); TEST_FIELD(EMRMASKBLT, DWORD, cbBmiMask, 116, 4, 4); TEST_FIELD(EMRMASKBLT, DWORD, offBitsMask, 120, 4, 4); TEST_FIELD(EMRMASKBLT, DWORD, cbBitsMask, 124, 4, 4); /* EMRMODIFYWORLDTRANSFORM (pack 4) */ TEST_TYPE(EMRMODIFYWORLDTRANSFORM, 36, 4); TEST_FIELD(EMRMODIFYWORLDTRANSFORM, EMR, emr, 0, 8, 4); TEST_FIELD(EMRMODIFYWORLDTRANSFORM, XFORM, xform, 8, 24, 4); TEST_FIELD(EMRMODIFYWORLDTRANSFORM, DWORD, iMode, 32, 4, 4); /* EMROFFSETCLIPRGN (pack 4) */ TEST_TYPE(EMROFFSETCLIPRGN, 16, 4); TEST_FIELD(EMROFFSETCLIPRGN, EMR, emr, 0, 8, 4); TEST_FIELD(EMROFFSETCLIPRGN, POINTL, ptlOffset, 8, 8, 4); /* EMRPIXELFORMAT (pack 4) */ TEST_TYPE(EMRPIXELFORMAT, 48, 4); TEST_FIELD(EMRPIXELFORMAT, EMR, emr, 0, 8, 4); TEST_FIELD(EMRPIXELFORMAT, PIXELFORMATDESCRIPTOR, pfd, 8, 40, 4); /* EMRPLGBLT (pack 4) */ TEST_TYPE(EMRPLGBLT, 140, 4); TEST_FIELD(EMRPLGBLT, EMR, emr, 0, 8, 4); TEST_FIELD(EMRPLGBLT, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMRPLGBLT, POINTL[3], aptlDst, 24, 24, 4); TEST_FIELD(EMRPLGBLT, LONG, xSrc, 48, 4, 4); TEST_FIELD(EMRPLGBLT, LONG, ySrc, 52, 4, 4); TEST_FIELD(EMRPLGBLT, LONG, cxSrc, 56, 4, 4); TEST_FIELD(EMRPLGBLT, LONG, cySrc, 60, 4, 4); TEST_FIELD(EMRPLGBLT, XFORM, xformSrc, 64, 24, 4); TEST_FIELD(EMRPLGBLT, COLORREF, crBkColorSrc, 88, 4, 4); TEST_FIELD(EMRPLGBLT, DWORD, iUsageSrc, 92, 4, 4); TEST_FIELD(EMRPLGBLT, DWORD, offBmiSrc, 96, 4, 4); TEST_FIELD(EMRPLGBLT, DWORD, cbBmiSrc, 100, 4, 4); TEST_FIELD(EMRPLGBLT, DWORD, offBitsSrc, 104, 4, 4); TEST_FIELD(EMRPLGBLT, DWORD, cbBitsSrc, 108, 4, 4); TEST_FIELD(EMRPLGBLT, LONG, xMask, 112, 4, 4); TEST_FIELD(EMRPLGBLT, LONG, yMask, 116, 4, 4); TEST_FIELD(EMRPLGBLT, DWORD, iUsageMask, 120, 4, 4); TEST_FIELD(EMRPLGBLT, DWORD, offBmiMask, 124, 4, 4); TEST_FIELD(EMRPLGBLT, DWORD, cbBmiMask, 128, 4, 4); TEST_FIELD(EMRPLGBLT, DWORD, offBitsMask, 132, 4, 4); TEST_FIELD(EMRPLGBLT, DWORD, cbBitsMask, 136, 4, 4); /* EMRPOLYDRAW (pack 4) */ TEST_TYPE(EMRPOLYDRAW, 40, 4); TEST_FIELD(EMRPOLYDRAW, EMR, emr, 0, 8, 4); TEST_FIELD(EMRPOLYDRAW, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMRPOLYDRAW, DWORD, cptl, 24, 4, 4); TEST_FIELD(EMRPOLYDRAW, POINTL[1], aptl, 28, 8, 4); TEST_FIELD(EMRPOLYDRAW, BYTE[1], abTypes, 36, 1, 1); /* EMRPOLYLINE (pack 4) */ TEST_TYPE(EMRPOLYLINE, 36, 4); TEST_FIELD(EMRPOLYLINE, EMR, emr, 0, 8, 4); TEST_FIELD(EMRPOLYLINE, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMRPOLYLINE, DWORD, cptl, 24, 4, 4); TEST_FIELD(EMRPOLYLINE, POINTL[1], aptl, 28, 8, 4); /* EMRPOLYPOLYLINE (pack 4) */ TEST_TYPE(EMRPOLYPOLYLINE, 44, 4); TEST_FIELD(EMRPOLYPOLYLINE, EMR, emr, 0, 8, 4); TEST_FIELD(EMRPOLYPOLYLINE, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMRPOLYPOLYLINE, DWORD, nPolys, 24, 4, 4); TEST_FIELD(EMRPOLYPOLYLINE, DWORD, cptl, 28, 4, 4); TEST_FIELD(EMRPOLYPOLYLINE, DWORD[1], aPolyCounts, 32, 4, 4); TEST_FIELD(EMRPOLYPOLYLINE, POINTL[1], aptl, 36, 8, 4); /* EMRPOLYTEXTOUTA (pack 4) */ TEST_TYPE(EMRPOLYTEXTOUTA, 80, 4); TEST_FIELD(EMRPOLYTEXTOUTA, EMR, emr, 0, 8, 4); TEST_FIELD(EMRPOLYTEXTOUTA, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMRPOLYTEXTOUTA, DWORD, iGraphicsMode, 24, 4, 4); TEST_FIELD(EMRPOLYTEXTOUTA, FLOAT, exScale, 28, 4, 4); TEST_FIELD(EMRPOLYTEXTOUTA, FLOAT, eyScale, 32, 4, 4); TEST_FIELD(EMRPOLYTEXTOUTA, LONG, cStrings, 36, 4, 4); TEST_FIELD(EMRPOLYTEXTOUTA, EMRTEXT[1], aemrtext, 40, 40, 4); /* EMRRESIZEPALETTE (pack 4) */ TEST_TYPE(EMRRESIZEPALETTE, 16, 4); TEST_FIELD(EMRRESIZEPALETTE, EMR, emr, 0, 8, 4); TEST_FIELD(EMRRESIZEPALETTE, DWORD, ihPal, 8, 4, 4); TEST_FIELD(EMRRESIZEPALETTE, DWORD, cEntries, 12, 4, 4); /* EMRRESTOREDC (pack 4) */ TEST_TYPE(EMRRESTOREDC, 12, 4); TEST_FIELD(EMRRESTOREDC, EMR, emr, 0, 8, 4); TEST_FIELD(EMRRESTOREDC, LONG, iRelative, 8, 4, 4); /* EMRROUNDRECT (pack 4) */ TEST_TYPE(EMRROUNDRECT, 32, 4); TEST_FIELD(EMRROUNDRECT, EMR, emr, 0, 8, 4); TEST_FIELD(EMRROUNDRECT, RECTL, rclBox, 8, 16, 4); TEST_FIELD(EMRROUNDRECT, SIZEL, szlCorner, 24, 8, 4); /* EMRSCALEVIEWPORTEXTEX (pack 4) */ TEST_TYPE(EMRSCALEVIEWPORTEXTEX, 24, 4); TEST_FIELD(EMRSCALEVIEWPORTEXTEX, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSCALEVIEWPORTEXTEX, LONG, xNum, 8, 4, 4); TEST_FIELD(EMRSCALEVIEWPORTEXTEX, LONG, xDenom, 12, 4, 4); TEST_FIELD(EMRSCALEVIEWPORTEXTEX, LONG, yNum, 16, 4, 4); TEST_FIELD(EMRSCALEVIEWPORTEXTEX, LONG, yDenom, 20, 4, 4); /* EMRSELECTCLIPPATH (pack 4) */ TEST_TYPE(EMRSELECTCLIPPATH, 12, 4); TEST_FIELD(EMRSELECTCLIPPATH, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSELECTCLIPPATH, DWORD, iMode, 8, 4, 4); /* EMRSELECTPALETTE (pack 4) */ TEST_TYPE(EMRSELECTPALETTE, 12, 4); TEST_FIELD(EMRSELECTPALETTE, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSELECTPALETTE, DWORD, ihPal, 8, 4, 4); /* EMRSETARCDIRECTION (pack 4) */ TEST_TYPE(EMRSETARCDIRECTION, 12, 4); TEST_FIELD(EMRSETARCDIRECTION, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSETARCDIRECTION, DWORD, iArcDirection, 8, 4, 4); /* EMRSETBKCOLOR (pack 4) */ TEST_TYPE(EMRSETBKCOLOR, 12, 4); TEST_FIELD(EMRSETBKCOLOR, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSETBKCOLOR, COLORREF, crColor, 8, 4, 4); /* EMRSETBRUSHORGEX (pack 4) */ TEST_TYPE(EMRSETBRUSHORGEX, 16, 4); TEST_FIELD(EMRSETBRUSHORGEX, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSETBRUSHORGEX, POINTL, ptlOrigin, 8, 8, 4); /* EMRSETCOLORADJUSTMENT (pack 4) */ TEST_TYPE(EMRSETCOLORADJUSTMENT, 32, 4); TEST_FIELD(EMRSETCOLORADJUSTMENT, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSETCOLORADJUSTMENT, COLORADJUSTMENT, ColorAdjustment, 8, 24, 2); /* EMRSETDIBITSTODEIVCE (pack 4) */ TEST_TYPE(EMRSETDIBITSTODEIVCE, 76, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, LONG, xDest, 24, 4, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, LONG, yDest, 28, 4, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, LONG, xSrc, 32, 4, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, LONG, ySrc, 36, 4, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, LONG, cxSrc, 40, 4, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, LONG, cySrc, 44, 4, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, DWORD, offBmiSrc, 48, 4, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, DWORD, cbBmiSrc, 52, 4, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, DWORD, offBitsSrc, 56, 4, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, DWORD, cbBitsSrc, 60, 4, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, DWORD, iUsageSrc, 64, 4, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, DWORD, iStartScan, 68, 4, 4); TEST_FIELD(EMRSETDIBITSTODEIVCE, DWORD, cScans, 72, 4, 4); /* EMRSETMAPPERFLAGS (pack 4) */ TEST_TYPE(EMRSETMAPPERFLAGS, 12, 4); TEST_FIELD(EMRSETMAPPERFLAGS, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSETMAPPERFLAGS, DWORD, dwFlags, 8, 4, 4); /* EMRSETMITERLIMIT (pack 4) */ TEST_TYPE(EMRSETMITERLIMIT, 12, 4); TEST_FIELD(EMRSETMITERLIMIT, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSETMITERLIMIT, FLOAT, eMiterLimit, 8, 4, 4); /* EMRSETPIXELV (pack 4) */ TEST_TYPE(EMRSETPIXELV, 20, 4); TEST_FIELD(EMRSETPIXELV, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSETPIXELV, POINTL, ptlPixel, 8, 8, 4); TEST_FIELD(EMRSETPIXELV, COLORREF, crColor, 16, 4, 4); /* EMRSETTEXTJUSTIFICATION (pack 4) */ TEST_TYPE(EMRSETTEXTJUSTIFICATION, 16, 4); TEST_FIELD(EMRSETTEXTJUSTIFICATION, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSETTEXTJUSTIFICATION, INT, nBreakExtra, 8, 4, 4); TEST_FIELD(EMRSETTEXTJUSTIFICATION, INT, nBreakCount, 12, 4, 4); /* EMRSETVIEWPORTEXTEX (pack 4) */ TEST_TYPE(EMRSETVIEWPORTEXTEX, 16, 4); TEST_FIELD(EMRSETVIEWPORTEXTEX, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSETVIEWPORTEXTEX, SIZEL, szlExtent, 8, 8, 4); /* EMRSETWORLDTRANSFORM (pack 4) */ TEST_TYPE(EMRSETWORLDTRANSFORM, 32, 4); TEST_FIELD(EMRSETWORLDTRANSFORM, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSETWORLDTRANSFORM, XFORM, xform, 8, 24, 4); /* EMRSTRETCHBLT (pack 4) */ TEST_TYPE(EMRSTRETCHBLT, 108, 4); TEST_FIELD(EMRSTRETCHBLT, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSTRETCHBLT, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMRSTRETCHBLT, LONG, xDest, 24, 4, 4); TEST_FIELD(EMRSTRETCHBLT, LONG, yDest, 28, 4, 4); TEST_FIELD(EMRSTRETCHBLT, LONG, cxDest, 32, 4, 4); TEST_FIELD(EMRSTRETCHBLT, LONG, cyDest, 36, 4, 4); TEST_FIELD(EMRSTRETCHBLT, DWORD, dwRop, 40, 4, 4); TEST_FIELD(EMRSTRETCHBLT, LONG, xSrc, 44, 4, 4); TEST_FIELD(EMRSTRETCHBLT, LONG, ySrc, 48, 4, 4); TEST_FIELD(EMRSTRETCHBLT, XFORM, xformSrc, 52, 24, 4); TEST_FIELD(EMRSTRETCHBLT, COLORREF, crBkColorSrc, 76, 4, 4); TEST_FIELD(EMRSTRETCHBLT, DWORD, iUsageSrc, 80, 4, 4); TEST_FIELD(EMRSTRETCHBLT, DWORD, offBmiSrc, 84, 4, 4); TEST_FIELD(EMRSTRETCHBLT, DWORD, cbBmiSrc, 88, 4, 4); TEST_FIELD(EMRSTRETCHBLT, DWORD, offBitsSrc, 92, 4, 4); TEST_FIELD(EMRSTRETCHBLT, DWORD, cbBitsSrc, 96, 4, 4); TEST_FIELD(EMRSTRETCHBLT, LONG, cxSrc, 100, 4, 4); TEST_FIELD(EMRSTRETCHBLT, LONG, cySrc, 104, 4, 4); /* EMRSTRETCHDIBITS (pack 4) */ TEST_TYPE(EMRSTRETCHDIBITS, 80, 4); TEST_FIELD(EMRSTRETCHDIBITS, EMR, emr, 0, 8, 4); TEST_FIELD(EMRSTRETCHDIBITS, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(EMRSTRETCHDIBITS, LONG, xDest, 24, 4, 4); TEST_FIELD(EMRSTRETCHDIBITS, LONG, yDest, 28, 4, 4); TEST_FIELD(EMRSTRETCHDIBITS, LONG, xSrc, 32, 4, 4); TEST_FIELD(EMRSTRETCHDIBITS, LONG, ySrc, 36, 4, 4); TEST_FIELD(EMRSTRETCHDIBITS, LONG, cxSrc, 40, 4, 4); TEST_FIELD(EMRSTRETCHDIBITS, LONG, cySrc, 44, 4, 4); TEST_FIELD(EMRSTRETCHDIBITS, DWORD, offBmiSrc, 48, 4, 4); TEST_FIELD(EMRSTRETCHDIBITS, DWORD, cbBmiSrc, 52, 4, 4); TEST_FIELD(EMRSTRETCHDIBITS, DWORD, offBitsSrc, 56, 4, 4); TEST_FIELD(EMRSTRETCHDIBITS, DWORD, cbBitsSrc, 60, 4, 4); TEST_FIELD(EMRSTRETCHDIBITS, DWORD, iUsageSrc, 64, 4, 4); TEST_FIELD(EMRSTRETCHDIBITS, DWORD, dwRop, 68, 4, 4); TEST_FIELD(EMRSTRETCHDIBITS, LONG, cxDest, 72, 4, 4); TEST_FIELD(EMRSTRETCHDIBITS, LONG, cyDest, 76, 4, 4); /* EMRTEXT (pack 4) */ TEST_TYPE(EMRTEXT, 40, 4); TEST_FIELD(EMRTEXT, POINTL, ptlReference, 0, 8, 4); TEST_FIELD(EMRTEXT, DWORD, nChars, 8, 4, 4); TEST_FIELD(EMRTEXT, DWORD, offString, 12, 4, 4); TEST_FIELD(EMRTEXT, DWORD, fOptions, 16, 4, 4); TEST_FIELD(EMRTEXT, RECTL, rcl, 20, 16, 4); TEST_FIELD(EMRTEXT, DWORD, offDx, 36, 4, 4); /* ENHMETAHEADER (pack 4) */ TEST_TYPE(ENHMETAHEADER, 108, 4); TEST_FIELD(ENHMETAHEADER, DWORD, iType, 0, 4, 4); TEST_FIELD(ENHMETAHEADER, DWORD, nSize, 4, 4, 4); TEST_FIELD(ENHMETAHEADER, RECTL, rclBounds, 8, 16, 4); TEST_FIELD(ENHMETAHEADER, RECTL, rclFrame, 24, 16, 4); TEST_FIELD(ENHMETAHEADER, DWORD, dSignature, 40, 4, 4); TEST_FIELD(ENHMETAHEADER, DWORD, nVersion, 44, 4, 4); TEST_FIELD(ENHMETAHEADER, DWORD, nBytes, 48, 4, 4); TEST_FIELD(ENHMETAHEADER, DWORD, nRecords, 52, 4, 4); TEST_FIELD(ENHMETAHEADER, WORD, nHandles, 56, 2, 2); TEST_FIELD(ENHMETAHEADER, WORD, sReserved, 58, 2, 2); TEST_FIELD(ENHMETAHEADER, DWORD, nDescription, 60, 4, 4); TEST_FIELD(ENHMETAHEADER, DWORD, offDescription, 64, 4, 4); TEST_FIELD(ENHMETAHEADER, DWORD, nPalEntries, 68, 4, 4); TEST_FIELD(ENHMETAHEADER, SIZEL, szlDevice, 72, 8, 4); TEST_FIELD(ENHMETAHEADER, SIZEL, szlMillimeters, 80, 8, 4); TEST_FIELD(ENHMETAHEADER, DWORD, cbPixelFormat, 88, 4, 4); TEST_FIELD(ENHMETAHEADER, DWORD, offPixelFormat, 92, 4, 4); TEST_FIELD(ENHMETAHEADER, DWORD, bOpenGL, 96, 4, 4); TEST_FIELD(ENHMETAHEADER, SIZEL, szlMicrometers, 100, 8, 4); /* ENHMETARECORD (pack 4) */ TEST_TYPE(ENHMETARECORD, 12, 4); TEST_FIELD(ENHMETARECORD, DWORD, iType, 0, 4, 4); TEST_FIELD(ENHMETARECORD, DWORD, nSize, 4, 4, 4); TEST_FIELD(ENHMETARECORD, DWORD[1], dParm, 8, 4, 4); /* ENUMLOGFONTA (pack 4) */ TEST_TYPE(ENUMLOGFONTA, 156, 4); TEST_FIELD(ENUMLOGFONTA, LOGFONTA, elfLogFont, 0, 60, 4); TEST_FIELD(ENUMLOGFONTA, BYTE[LF_FULLFACESIZE], elfFullName, 60, 64, 1); TEST_FIELD(ENUMLOGFONTA, BYTE[LF_FACESIZE], elfStyle, 124, 32, 1); /* ENUMLOGFONTEXA (pack 4) */ TEST_TYPE(ENUMLOGFONTEXA, 188, 4); TEST_FIELD(ENUMLOGFONTEXA, LOGFONTA, elfLogFont, 0, 60, 4); TEST_FIELD(ENUMLOGFONTEXA, BYTE[LF_FULLFACESIZE], elfFullName, 60, 64, 1); TEST_FIELD(ENUMLOGFONTEXA, BYTE[LF_FACESIZE], elfStyle, 124, 32, 1); TEST_FIELD(ENUMLOGFONTEXA, BYTE[LF_FACESIZE], elfScript, 156, 32, 1); /* ENUMLOGFONTEXW (pack 4) */ TEST_TYPE(ENUMLOGFONTEXW, 348, 4); TEST_FIELD(ENUMLOGFONTEXW, LOGFONTW, elfLogFont, 0, 92, 4); TEST_FIELD(ENUMLOGFONTEXW, WCHAR[LF_FULLFACESIZE], elfFullName, 92, 128, 2); TEST_FIELD(ENUMLOGFONTEXW, WCHAR[LF_FACESIZE], elfStyle, 220, 64, 2); TEST_FIELD(ENUMLOGFONTEXW, WCHAR[LF_FACESIZE], elfScript, 284, 64, 2); /* ENUMLOGFONTW (pack 4) */ TEST_TYPE(ENUMLOGFONTW, 284, 4); TEST_FIELD(ENUMLOGFONTW, LOGFONTW, elfLogFont, 0, 92, 4); TEST_FIELD(ENUMLOGFONTW, WCHAR[LF_FULLFACESIZE], elfFullName, 92, 128, 2); TEST_FIELD(ENUMLOGFONTW, WCHAR[LF_FACESIZE], elfStyle, 220, 64, 2); /* EXTLOGFONTA (pack 4) */ TEST_TYPE(EXTLOGFONTA, 192, 4); TEST_FIELD(EXTLOGFONTA, LOGFONTA, elfLogFont, 0, 60, 4); TEST_FIELD(EXTLOGFONTA, BYTE[LF_FULLFACESIZE], elfFullName, 60, 64, 1); TEST_FIELD(EXTLOGFONTA, BYTE[LF_FACESIZE], elfStyle, 124, 32, 1); TEST_FIELD(EXTLOGFONTA, DWORD, elfVersion, 156, 4, 4); TEST_FIELD(EXTLOGFONTA, DWORD, elfStyleSize, 160, 4, 4); TEST_FIELD(EXTLOGFONTA, DWORD, elfMatch, 164, 4, 4); TEST_FIELD(EXTLOGFONTA, DWORD, elfReserved, 168, 4, 4); TEST_FIELD(EXTLOGFONTA, BYTE[ELF_VENDOR_SIZE], elfVendorId, 172, 4, 1); TEST_FIELD(EXTLOGFONTA, DWORD, elfCulture, 176, 4, 4); TEST_FIELD(EXTLOGFONTA, PANOSE, elfPanose, 180, 10, 1); /* EXTLOGFONTW (pack 4) */ TEST_TYPE(EXTLOGFONTW, 320, 4); TEST_FIELD(EXTLOGFONTW, LOGFONTW, elfLogFont, 0, 92, 4); TEST_FIELD(EXTLOGFONTW, WCHAR[LF_FULLFACESIZE], elfFullName, 92, 128, 2); TEST_FIELD(EXTLOGFONTW, WCHAR[LF_FACESIZE], elfStyle, 220, 64, 2); TEST_FIELD(EXTLOGFONTW, DWORD, elfVersion, 284, 4, 4); TEST_FIELD(EXTLOGFONTW, DWORD, elfStyleSize, 288, 4, 4); TEST_FIELD(EXTLOGFONTW, DWORD, elfMatch, 292, 4, 4); TEST_FIELD(EXTLOGFONTW, DWORD, elfReserved, 296, 4, 4); TEST_FIELD(EXTLOGFONTW, BYTE[ELF_VENDOR_SIZE], elfVendorId, 300, 4, 1); TEST_FIELD(EXTLOGFONTW, DWORD, elfCulture, 304, 4, 4); TEST_FIELD(EXTLOGFONTW, PANOSE, elfPanose, 308, 10, 1); /* EXTLOGPEN (pack 4) */ TEST_TYPE(EXTLOGPEN, 28, 4); TEST_FIELD(EXTLOGPEN, DWORD, elpPenStyle, 0, 4, 4); TEST_FIELD(EXTLOGPEN, DWORD, elpWidth, 4, 4, 4); TEST_FIELD(EXTLOGPEN, UINT, elpBrushStyle, 8, 4, 4); TEST_FIELD(EXTLOGPEN, COLORREF, elpColor, 12, 4, 4); TEST_FIELD(EXTLOGPEN, LONG, elpHatch, 16, 4, 4); TEST_FIELD(EXTLOGPEN, DWORD, elpNumEntries, 20, 4, 4); TEST_FIELD(EXTLOGPEN, DWORD[1], elpStyleEntry, 24, 4, 4); /* FIXED (pack 4) */ TEST_TYPE(FIXED, 4, 2); TEST_FIELD(FIXED, WORD, fract, 0, 2, 2); TEST_FIELD(FIXED, SHORT, value, 2, 2, 2); /* FONTSIGNATURE (pack 4) */ TEST_TYPE(FONTSIGNATURE, 24, 4); TEST_FIELD(FONTSIGNATURE, DWORD[4], fsUsb, 0, 16, 4); TEST_FIELD(FONTSIGNATURE, DWORD[2], fsCsb, 16, 8, 4); /* GCP_RESULTSA (pack 4) */ TEST_TYPE(GCP_RESULTSA, 36, 4); TEST_FIELD(GCP_RESULTSA, DWORD, lStructSize, 0, 4, 4); TEST_FIELD(GCP_RESULTSA, LPSTR, lpOutString, 4, 4, 4); TEST_FIELD(GCP_RESULTSA, UINT *, lpOrder, 8, 4, 4); TEST_FIELD(GCP_RESULTSA, INT *, lpDx, 12, 4, 4); TEST_FIELD(GCP_RESULTSA, INT *, lpCaretPos, 16, 4, 4); TEST_FIELD(GCP_RESULTSA, LPSTR, lpClass, 20, 4, 4); TEST_FIELD(GCP_RESULTSA, LPWSTR, lpGlyphs, 24, 4, 4); TEST_FIELD(GCP_RESULTSA, UINT, nGlyphs, 28, 4, 4); TEST_FIELD(GCP_RESULTSA, UINT, nMaxFit, 32, 4, 4); /* GCP_RESULTSW (pack 4) */ TEST_TYPE(GCP_RESULTSW, 36, 4); TEST_FIELD(GCP_RESULTSW, DWORD, lStructSize, 0, 4, 4); TEST_FIELD(GCP_RESULTSW, LPWSTR, lpOutString, 4, 4, 4); TEST_FIELD(GCP_RESULTSW, UINT *, lpOrder, 8, 4, 4); TEST_FIELD(GCP_RESULTSW, INT *, lpDx, 12, 4, 4); TEST_FIELD(GCP_RESULTSW, INT *, lpCaretPos, 16, 4, 4); TEST_FIELD(GCP_RESULTSW, LPSTR, lpClass, 20, 4, 4); TEST_FIELD(GCP_RESULTSW, LPWSTR, lpGlyphs, 24, 4, 4); TEST_FIELD(GCP_RESULTSW, UINT, nGlyphs, 28, 4, 4); TEST_FIELD(GCP_RESULTSW, UINT, nMaxFit, 32, 4, 4); /* GLYPHMETRICS (pack 4) */ TEST_TYPE(GLYPHMETRICS, 20, 4); TEST_FIELD(GLYPHMETRICS, UINT, gmBlackBoxX, 0, 4, 4); TEST_FIELD(GLYPHMETRICS, UINT, gmBlackBoxY, 4, 4, 4); TEST_FIELD(GLYPHMETRICS, POINT, gmptGlyphOrigin, 8, 8, 4); TEST_FIELD(GLYPHMETRICS, SHORT, gmCellIncX, 16, 2, 2); TEST_FIELD(GLYPHMETRICS, SHORT, gmCellIncY, 18, 2, 2); /* GRADIENT_RECT (pack 4) */ TEST_TYPE(GRADIENT_RECT, 8, 4); TEST_FIELD(GRADIENT_RECT, ULONG, UpperLeft, 0, 4, 4); TEST_FIELD(GRADIENT_RECT, ULONG, LowerRight, 4, 4, 4); /* GRADIENT_TRIANGLE (pack 4) */ TEST_TYPE(GRADIENT_TRIANGLE, 12, 4); TEST_FIELD(GRADIENT_TRIANGLE, ULONG, Vertex1, 0, 4, 4); TEST_FIELD(GRADIENT_TRIANGLE, ULONG, Vertex2, 4, 4, 4); TEST_FIELD(GRADIENT_TRIANGLE, ULONG, Vertex3, 8, 4, 4); /* HANDLETABLE (pack 4) */ TEST_TYPE(HANDLETABLE, 4, 4); TEST_FIELD(HANDLETABLE, HGDIOBJ[1], objectHandle, 0, 4, 4); /* KERNINGPAIR (pack 4) */ TEST_TYPE(KERNINGPAIR, 8, 4); TEST_FIELD(KERNINGPAIR, WORD, wFirst, 0, 2, 2); TEST_FIELD(KERNINGPAIR, WORD, wSecond, 2, 2, 2); TEST_FIELD(KERNINGPAIR, INT, iKernAmount, 4, 4, 4); /* LOCALESIGNATURE (pack 4) */ TEST_TYPE(LOCALESIGNATURE, 32, 4); TEST_FIELD(LOCALESIGNATURE, DWORD[4], lsUsb, 0, 16, 4); TEST_FIELD(LOCALESIGNATURE, DWORD[2], lsCsbDefault, 16, 8, 4); TEST_FIELD(LOCALESIGNATURE, DWORD[2], lsCsbSupported, 24, 8, 4); /* LOGBRUSH (pack 4) */ TEST_TYPE(LOGBRUSH, 12, 4); TEST_FIELD(LOGBRUSH, UINT, lbStyle, 0, 4, 4); TEST_FIELD(LOGBRUSH, COLORREF, lbColor, 4, 4, 4); TEST_FIELD(LOGBRUSH, INT, lbHatch, 8, 4, 4); /* LOGCOLORSPACEA (pack 4) */ TEST_TYPE(LOGCOLORSPACEA, 328, 4); TEST_FIELD(LOGCOLORSPACEA, DWORD, lcsSignature, 0, 4, 4); TEST_FIELD(LOGCOLORSPACEA, DWORD, lcsVersion, 4, 4, 4); TEST_FIELD(LOGCOLORSPACEA, DWORD, lcsSize, 8, 4, 4); TEST_FIELD(LOGCOLORSPACEA, LCSCSTYPE, lcsCSType, 12, 4, 4); TEST_FIELD(LOGCOLORSPACEA, LCSGAMUTMATCH, lcsIntent, 16, 4, 4); TEST_FIELD(LOGCOLORSPACEA, CIEXYZTRIPLE, lcsEndpoints, 20, 36, 4); TEST_FIELD(LOGCOLORSPACEA, DWORD, lcsGammaRed, 56, 4, 4); TEST_FIELD(LOGCOLORSPACEA, DWORD, lcsGammaGreen, 60, 4, 4); TEST_FIELD(LOGCOLORSPACEA, DWORD, lcsGammaBlue, 64, 4, 4); TEST_FIELD(LOGCOLORSPACEA, CHAR[MAX_PATH], lcsFilename, 68, 260, 1); /* LOGCOLORSPACEW (pack 4) */ TEST_TYPE(LOGCOLORSPACEW, 588, 4); TEST_FIELD(LOGCOLORSPACEW, DWORD, lcsSignature, 0, 4, 4); TEST_FIELD(LOGCOLORSPACEW, DWORD, lcsVersion, 4, 4, 4); TEST_FIELD(LOGCOLORSPACEW, DWORD, lcsSize, 8, 4, 4); TEST_FIELD(LOGCOLORSPACEW, LCSCSTYPE, lcsCSType, 12, 4, 4); TEST_FIELD(LOGCOLORSPACEW, LCSGAMUTMATCH, lcsIntent, 16, 4, 4); TEST_FIELD(LOGCOLORSPACEW, CIEXYZTRIPLE, lcsEndpoints, 20, 36, 4); TEST_FIELD(LOGCOLORSPACEW, DWORD, lcsGammaRed, 56, 4, 4); TEST_FIELD(LOGCOLORSPACEW, DWORD, lcsGammaGreen, 60, 4, 4); TEST_FIELD(LOGCOLORSPACEW, DWORD, lcsGammaBlue, 64, 4, 4); TEST_FIELD(LOGCOLORSPACEW, WCHAR[MAX_PATH], lcsFilename, 68, 520, 2); /* LOGFONTA (pack 4) */ TEST_TYPE(LOGFONTA, 60, 4); TEST_FIELD(LOGFONTA, LONG, lfHeight, 0, 4, 4); TEST_FIELD(LOGFONTA, LONG, lfWidth, 4, 4, 4); TEST_FIELD(LOGFONTA, LONG, lfEscapement, 8, 4, 4); TEST_FIELD(LOGFONTA, LONG, lfOrientation, 12, 4, 4); TEST_FIELD(LOGFONTA, LONG, lfWeight, 16, 4, 4); TEST_FIELD(LOGFONTA, BYTE, lfItalic, 20, 1, 1); TEST_FIELD(LOGFONTA, BYTE, lfUnderline, 21, 1, 1); TEST_FIELD(LOGFONTA, BYTE, lfStrikeOut, 22, 1, 1); TEST_FIELD(LOGFONTA, BYTE, lfCharSet, 23, 1, 1); TEST_FIELD(LOGFONTA, BYTE, lfOutPrecision, 24, 1, 1); TEST_FIELD(LOGFONTA, BYTE, lfClipPrecision, 25, 1, 1); TEST_FIELD(LOGFONTA, BYTE, lfQuality, 26, 1, 1); TEST_FIELD(LOGFONTA, BYTE, lfPitchAndFamily, 27, 1, 1); TEST_FIELD(LOGFONTA, CHAR[LF_FACESIZE], lfFaceName, 28, 32, 1); /* LOGFONTW (pack 4) */ TEST_TYPE(LOGFONTW, 92, 4); TEST_FIELD(LOGFONTW, LONG, lfHeight, 0, 4, 4); TEST_FIELD(LOGFONTW, LONG, lfWidth, 4, 4, 4); TEST_FIELD(LOGFONTW, LONG, lfEscapement, 8, 4, 4); TEST_FIELD(LOGFONTW, LONG, lfOrientation, 12, 4, 4); TEST_FIELD(LOGFONTW, LONG, lfWeight, 16, 4, 4); TEST_FIELD(LOGFONTW, BYTE, lfItalic, 20, 1, 1); TEST_FIELD(LOGFONTW, BYTE, lfUnderline, 21, 1, 1); TEST_FIELD(LOGFONTW, BYTE, lfStrikeOut, 22, 1, 1); TEST_FIELD(LOGFONTW, BYTE, lfCharSet, 23, 1, 1); TEST_FIELD(LOGFONTW, BYTE, lfOutPrecision, 24, 1, 1); TEST_FIELD(LOGFONTW, BYTE, lfClipPrecision, 25, 1, 1); TEST_FIELD(LOGFONTW, BYTE, lfQuality, 26, 1, 1); TEST_FIELD(LOGFONTW, BYTE, lfPitchAndFamily, 27, 1, 1); TEST_FIELD(LOGFONTW, WCHAR[LF_FACESIZE], lfFaceName, 28, 64, 2); /* LOGPEN (pack 4) */ TEST_TYPE(LOGPEN, 16, 4); TEST_FIELD(LOGPEN, UINT, lopnStyle, 0, 4, 4); TEST_FIELD(LOGPEN, POINT, lopnWidth, 4, 8, 4); TEST_FIELD(LOGPEN, COLORREF, lopnColor, 12, 4, 4); /* MAT2 (pack 4) */ TEST_TYPE(MAT2, 16, 2); TEST_FIELD(MAT2, FIXED, eM11, 0, 4, 2); TEST_FIELD(MAT2, FIXED, eM12, 4, 4, 2); TEST_FIELD(MAT2, FIXED, eM21, 8, 4, 2); TEST_FIELD(MAT2, FIXED, eM22, 12, 4, 2); /* METAFILEPICT (pack 4) */ TEST_TYPE(METAFILEPICT, 16, 4); TEST_FIELD(METAFILEPICT, LONG, mm, 0, 4, 4); TEST_FIELD(METAFILEPICT, LONG, xExt, 4, 4, 4); TEST_FIELD(METAFILEPICT, LONG, yExt, 8, 4, 4); TEST_FIELD(METAFILEPICT, HMETAFILE, hMF, 12, 4, 4); /* METAHEADER (pack 2) */ TEST_TYPE(METAHEADER, 18, 2); TEST_FIELD(METAHEADER, WORD, mtType, 0, 2, 2); TEST_FIELD(METAHEADER, WORD, mtHeaderSize, 2, 2, 2); TEST_FIELD(METAHEADER, WORD, mtVersion, 4, 2, 2); TEST_FIELD(METAHEADER, DWORD, mtSize, 6, 4, 2); TEST_FIELD(METAHEADER, WORD, mtNoObjects, 10, 2, 2); TEST_FIELD(METAHEADER, DWORD, mtMaxRecord, 12, 4, 2); TEST_FIELD(METAHEADER, WORD, mtNoParameters, 16, 2, 2); /* METARECORD (pack 4) */ TEST_TYPE(METARECORD, 8, 4); TEST_FIELD(METARECORD, DWORD, rdSize, 0, 4, 4); TEST_FIELD(METARECORD, WORD, rdFunction, 4, 2, 2); TEST_FIELD(METARECORD, WORD[1], rdParm, 6, 2, 2); /* NEWTEXTMETRICA (pack 4) */ TEST_TYPE(NEWTEXTMETRICA, 72, 4); TEST_FIELD(NEWTEXTMETRICA, LONG, tmHeight, 0, 4, 4); TEST_FIELD(NEWTEXTMETRICA, LONG, tmAscent, 4, 4, 4); TEST_FIELD(NEWTEXTMETRICA, LONG, tmDescent, 8, 4, 4); TEST_FIELD(NEWTEXTMETRICA, LONG, tmInternalLeading, 12, 4, 4); TEST_FIELD(NEWTEXTMETRICA, LONG, tmExternalLeading, 16, 4, 4); TEST_FIELD(NEWTEXTMETRICA, LONG, tmAveCharWidth, 20, 4, 4); TEST_FIELD(NEWTEXTMETRICA, LONG, tmMaxCharWidth, 24, 4, 4); TEST_FIELD(NEWTEXTMETRICA, LONG, tmWeight, 28, 4, 4); TEST_FIELD(NEWTEXTMETRICA, LONG, tmOverhang, 32, 4, 4); TEST_FIELD(NEWTEXTMETRICA, LONG, tmDigitizedAspectX, 36, 4, 4); TEST_FIELD(NEWTEXTMETRICA, LONG, tmDigitizedAspectY, 40, 4, 4); TEST_FIELD(NEWTEXTMETRICA, BYTE, tmFirstChar, 44, 1, 1); TEST_FIELD(NEWTEXTMETRICA, BYTE, tmLastChar, 45, 1, 1); TEST_FIELD(NEWTEXTMETRICA, BYTE, tmDefaultChar, 46, 1, 1); TEST_FIELD(NEWTEXTMETRICA, BYTE, tmBreakChar, 47, 1, 1); TEST_FIELD(NEWTEXTMETRICA, BYTE, tmItalic, 48, 1, 1); TEST_FIELD(NEWTEXTMETRICA, BYTE, tmUnderlined, 49, 1, 1); TEST_FIELD(NEWTEXTMETRICA, BYTE, tmStruckOut, 50, 1, 1); TEST_FIELD(NEWTEXTMETRICA, BYTE, tmPitchAndFamily, 51, 1, 1); TEST_FIELD(NEWTEXTMETRICA, BYTE, tmCharSet, 52, 1, 1); TEST_FIELD(NEWTEXTMETRICA, DWORD, ntmFlags, 56, 4, 4); TEST_FIELD(NEWTEXTMETRICA, UINT, ntmSizeEM, 60, 4, 4); TEST_FIELD(NEWTEXTMETRICA, UINT, ntmCellHeight, 64, 4, 4); TEST_FIELD(NEWTEXTMETRICA, UINT, ntmAvgWidth, 68, 4, 4); /* NEWTEXTMETRICEXA (pack 4) */ TEST_TYPE(NEWTEXTMETRICEXA, 96, 4); TEST_FIELD(NEWTEXTMETRICEXA, NEWTEXTMETRICA, ntmTm, 0, 72, 4); TEST_FIELD(NEWTEXTMETRICEXA, FONTSIGNATURE, ntmFontSig, 72, 24, 4); /* NEWTEXTMETRICEXW (pack 4) */ TEST_TYPE(NEWTEXTMETRICEXW, 100, 4); TEST_FIELD(NEWTEXTMETRICEXW, NEWTEXTMETRICW, ntmTm, 0, 76, 4); TEST_FIELD(NEWTEXTMETRICEXW, FONTSIGNATURE, ntmFontSig, 76, 24, 4); /* NEWTEXTMETRICW (pack 4) */ TEST_TYPE(NEWTEXTMETRICW, 76, 4); TEST_FIELD(NEWTEXTMETRICW, LONG, tmHeight, 0, 4, 4); TEST_FIELD(NEWTEXTMETRICW, LONG, tmAscent, 4, 4, 4); TEST_FIELD(NEWTEXTMETRICW, LONG, tmDescent, 8, 4, 4); TEST_FIELD(NEWTEXTMETRICW, LONG, tmInternalLeading, 12, 4, 4); TEST_FIELD(NEWTEXTMETRICW, LONG, tmExternalLeading, 16, 4, 4); TEST_FIELD(NEWTEXTMETRICW, LONG, tmAveCharWidth, 20, 4, 4); TEST_FIELD(NEWTEXTMETRICW, LONG, tmMaxCharWidth, 24, 4, 4); TEST_FIELD(NEWTEXTMETRICW, LONG, tmWeight, 28, 4, 4); TEST_FIELD(NEWTEXTMETRICW, LONG, tmOverhang, 32, 4, 4); TEST_FIELD(NEWTEXTMETRICW, LONG, tmDigitizedAspectX, 36, 4, 4); TEST_FIELD(NEWTEXTMETRICW, LONG, tmDigitizedAspectY, 40, 4, 4); TEST_FIELD(NEWTEXTMETRICW, WCHAR, tmFirstChar, 44, 2, 2); TEST_FIELD(NEWTEXTMETRICW, WCHAR, tmLastChar, 46, 2, 2); TEST_FIELD(NEWTEXTMETRICW, WCHAR, tmDefaultChar, 48, 2, 2); TEST_FIELD(NEWTEXTMETRICW, WCHAR, tmBreakChar, 50, 2, 2); TEST_FIELD(NEWTEXTMETRICW, BYTE, tmItalic, 52, 1, 1); TEST_FIELD(NEWTEXTMETRICW, BYTE, tmUnderlined, 53, 1, 1); TEST_FIELD(NEWTEXTMETRICW, BYTE, tmStruckOut, 54, 1, 1); TEST_FIELD(NEWTEXTMETRICW, BYTE, tmPitchAndFamily, 55, 1, 1); TEST_FIELD(NEWTEXTMETRICW, BYTE, tmCharSet, 56, 1, 1); TEST_FIELD(NEWTEXTMETRICW, DWORD, ntmFlags, 60, 4, 4); TEST_FIELD(NEWTEXTMETRICW, UINT, ntmSizeEM, 64, 4, 4); TEST_FIELD(NEWTEXTMETRICW, UINT, ntmCellHeight, 68, 4, 4); TEST_FIELD(NEWTEXTMETRICW, UINT, ntmAvgWidth, 72, 4, 4); /* OUTLINETEXTMETRICA (pack 4) */ TEST_TYPE(OUTLINETEXTMETRICA, 212, 4); TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmSize, 0, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, TEXTMETRICA, otmTextMetrics, 4, 56, 4); TEST_FIELD(OUTLINETEXTMETRICA, BYTE, otmFiller, 60, 1, 1); TEST_FIELD(OUTLINETEXTMETRICA, PANOSE, otmPanoseNumber, 61, 10, 1); TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmfsSelection, 72, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmfsType, 76, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, INT, otmsCharSlopeRise, 80, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, INT, otmsCharSlopeRun, 84, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, INT, otmItalicAngle, 88, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmEMSquare, 92, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, INT, otmAscent, 96, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, INT, otmDescent, 100, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmLineGap, 104, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmsCapEmHeight, 108, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmsXHeight, 112, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, RECT, otmrcFontBox, 116, 16, 4); TEST_FIELD(OUTLINETEXTMETRICA, INT, otmMacAscent, 132, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, INT, otmMacDescent, 136, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmMacLineGap, 140, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmusMinimumPPEM, 144, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, POINT, otmptSubscriptSize, 148, 8, 4); TEST_FIELD(OUTLINETEXTMETRICA, POINT, otmptSubscriptOffset, 156, 8, 4); TEST_FIELD(OUTLINETEXTMETRICA, POINT, otmptSuperscriptSize, 164, 8, 4); TEST_FIELD(OUTLINETEXTMETRICA, POINT, otmptSuperscriptOffset, 172, 8, 4); TEST_FIELD(OUTLINETEXTMETRICA, UINT, otmsStrikeoutSize, 180, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, INT, otmsStrikeoutPosition, 184, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, INT, otmsUnderscoreSize, 188, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, INT, otmsUnderscorePosition, 192, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, LPSTR, otmpFamilyName, 196, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, LPSTR, otmpFaceName, 200, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, LPSTR, otmpStyleName, 204, 4, 4); TEST_FIELD(OUTLINETEXTMETRICA, LPSTR, otmpFullName, 208, 4, 4); /* OUTLINETEXTMETRICW (pack 4) */ TEST_TYPE(OUTLINETEXTMETRICW, 216, 4); TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmSize, 0, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, TEXTMETRICW, otmTextMetrics, 4, 60, 4); TEST_FIELD(OUTLINETEXTMETRICW, BYTE, otmFiller, 64, 1, 1); TEST_FIELD(OUTLINETEXTMETRICW, PANOSE, otmPanoseNumber, 65, 10, 1); TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmfsSelection, 76, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmfsType, 80, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, INT, otmsCharSlopeRise, 84, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, INT, otmsCharSlopeRun, 88, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, INT, otmItalicAngle, 92, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmEMSquare, 96, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, INT, otmAscent, 100, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, INT, otmDescent, 104, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmLineGap, 108, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmsCapEmHeight, 112, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmsXHeight, 116, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, RECT, otmrcFontBox, 120, 16, 4); TEST_FIELD(OUTLINETEXTMETRICW, INT, otmMacAscent, 136, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, INT, otmMacDescent, 140, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmMacLineGap, 144, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmusMinimumPPEM, 148, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, POINT, otmptSubscriptSize, 152, 8, 4); TEST_FIELD(OUTLINETEXTMETRICW, POINT, otmptSubscriptOffset, 160, 8, 4); TEST_FIELD(OUTLINETEXTMETRICW, POINT, otmptSuperscriptSize, 168, 8, 4); TEST_FIELD(OUTLINETEXTMETRICW, POINT, otmptSuperscriptOffset, 176, 8, 4); TEST_FIELD(OUTLINETEXTMETRICW, UINT, otmsStrikeoutSize, 184, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, INT, otmsStrikeoutPosition, 188, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, INT, otmsUnderscoreSize, 192, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, INT, otmsUnderscorePosition, 196, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, LPSTR, otmpFamilyName, 200, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, LPSTR, otmpFaceName, 204, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, LPSTR, otmpStyleName, 208, 4, 4); TEST_FIELD(OUTLINETEXTMETRICW, LPSTR, otmpFullName, 212, 4, 4); /* PANOSE (pack 4) */ TEST_TYPE(PANOSE, 10, 1); TEST_FIELD(PANOSE, BYTE, bFamilyType, 0, 1, 1); TEST_FIELD(PANOSE, BYTE, bSerifStyle, 1, 1, 1); TEST_FIELD(PANOSE, BYTE, bWeight, 2, 1, 1); TEST_FIELD(PANOSE, BYTE, bProportion, 3, 1, 1); TEST_FIELD(PANOSE, BYTE, bContrast, 4, 1, 1); TEST_FIELD(PANOSE, BYTE, bStrokeVariation, 5, 1, 1); TEST_FIELD(PANOSE, BYTE, bArmStyle, 6, 1, 1); TEST_FIELD(PANOSE, BYTE, bLetterform, 7, 1, 1); TEST_FIELD(PANOSE, BYTE, bMidline, 8, 1, 1); TEST_FIELD(PANOSE, BYTE, bXHeight, 9, 1, 1); /* PELARRAY (pack 4) */ TEST_TYPE(PELARRAY, 20, 4); TEST_FIELD(PELARRAY, LONG, paXCount, 0, 4, 4); TEST_FIELD(PELARRAY, LONG, paYCount, 4, 4, 4); TEST_FIELD(PELARRAY, LONG, paXExt, 8, 4, 4); TEST_FIELD(PELARRAY, LONG, paYExt, 12, 4, 4); TEST_FIELD(PELARRAY, BYTE, paRGBs, 16, 1, 1); /* PIXELFORMATDESCRIPTOR (pack 4) */ TEST_TYPE(PIXELFORMATDESCRIPTOR, 40, 4); TEST_FIELD(PIXELFORMATDESCRIPTOR, WORD, nSize, 0, 2, 2); TEST_FIELD(PIXELFORMATDESCRIPTOR, WORD, nVersion, 2, 2, 2); TEST_FIELD(PIXELFORMATDESCRIPTOR, DWORD, dwFlags, 4, 4, 4); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, iPixelType, 8, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cColorBits, 9, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cRedBits, 10, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cRedShift, 11, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cGreenBits, 12, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cGreenShift, 13, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cBlueBits, 14, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cBlueShift, 15, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAlphaBits, 16, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAlphaShift, 17, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAccumBits, 18, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAccumRedBits, 19, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAccumGreenBits, 20, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAccumBlueBits, 21, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAccumAlphaBits, 22, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cDepthBits, 23, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cStencilBits, 24, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, cAuxBuffers, 25, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, iLayerType, 26, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, BYTE, bReserved, 27, 1, 1); TEST_FIELD(PIXELFORMATDESCRIPTOR, DWORD, dwLayerMask, 28, 4, 4); TEST_FIELD(PIXELFORMATDESCRIPTOR, DWORD, dwVisibleMask, 32, 4, 4); TEST_FIELD(PIXELFORMATDESCRIPTOR, DWORD, dwDamageMask, 36, 4, 4); /* POINTFX (pack 4) */ TEST_TYPE(POINTFX, 8, 2); TEST_FIELD(POINTFX, FIXED, x, 0, 4, 2); TEST_FIELD(POINTFX, FIXED, y, 4, 4, 2); /* POLYTEXTA (pack 4) */ TEST_TYPE(POLYTEXTA, 40, 4); TEST_FIELD(POLYTEXTA, INT, x, 0, 4, 4); TEST_FIELD(POLYTEXTA, INT, y, 4, 4, 4); TEST_FIELD(POLYTEXTA, UINT, n, 8, 4, 4); TEST_FIELD(POLYTEXTA, LPCSTR, lpstr, 12, 4, 4); TEST_FIELD(POLYTEXTA, UINT, uiFlags, 16, 4, 4); TEST_FIELD(POLYTEXTA, RECT, rcl, 20, 16, 4); TEST_FIELD(POLYTEXTA, INT *, pdx, 36, 4, 4); /* POLYTEXTW (pack 4) */ TEST_TYPE(POLYTEXTW, 40, 4); TEST_FIELD(POLYTEXTW, INT, x, 0, 4, 4); TEST_FIELD(POLYTEXTW, INT, y, 4, 4, 4); TEST_FIELD(POLYTEXTW, UINT, n, 8, 4, 4); TEST_FIELD(POLYTEXTW, LPCWSTR, lpstr, 12, 4, 4); TEST_FIELD(POLYTEXTW, UINT, uiFlags, 16, 4, 4); TEST_FIELD(POLYTEXTW, RECT, rcl, 20, 16, 4); TEST_FIELD(POLYTEXTW, INT *, pdx, 36, 4, 4); /* RASTERIZER_STATUS (pack 4) */ TEST_TYPE(RASTERIZER_STATUS, 6, 2); TEST_FIELD(RASTERIZER_STATUS, SHORT, nSize, 0, 2, 2); TEST_FIELD(RASTERIZER_STATUS, SHORT, wFlags, 2, 2, 2); TEST_FIELD(RASTERIZER_STATUS, SHORT, nLanguageID, 4, 2, 2); /* RGBQUAD (pack 4) */ TEST_TYPE(RGBQUAD, 4, 1); TEST_FIELD(RGBQUAD, BYTE, rgbBlue, 0, 1, 1); TEST_FIELD(RGBQUAD, BYTE, rgbGreen, 1, 1, 1); TEST_FIELD(RGBQUAD, BYTE, rgbRed, 2, 1, 1); TEST_FIELD(RGBQUAD, BYTE, rgbReserved, 3, 1, 1); /* RGBTRIPLE (pack 4) */ TEST_TYPE(RGBTRIPLE, 3, 1); TEST_FIELD(RGBTRIPLE, BYTE, rgbtBlue, 0, 1, 1); TEST_FIELD(RGBTRIPLE, BYTE, rgbtGreen, 1, 1, 1); TEST_FIELD(RGBTRIPLE, BYTE, rgbtRed, 2, 1, 1); /* RGNDATA (pack 4) */ TEST_TYPE(RGNDATA, 36, 4); TEST_FIELD(RGNDATA, RGNDATAHEADER, rdh, 0, 32, 4); TEST_FIELD(RGNDATA, char[1], Buffer, 32, 1, 1); /* RGNDATAHEADER (pack 4) */ TEST_TYPE(RGNDATAHEADER, 32, 4); TEST_FIELD(RGNDATAHEADER, DWORD, dwSize, 0, 4, 4); TEST_FIELD(RGNDATAHEADER, DWORD, iType, 4, 4, 4); TEST_FIELD(RGNDATAHEADER, DWORD, nCount, 8, 4, 4); TEST_FIELD(RGNDATAHEADER, DWORD, nRgnSize, 12, 4, 4); TEST_FIELD(RGNDATAHEADER, RECT, rcBound, 16, 16, 4); /* TEXTMETRICA (pack 4) */ TEST_TYPE(TEXTMETRICA, 56, 4); TEST_FIELD(TEXTMETRICA, LONG, tmHeight, 0, 4, 4); TEST_FIELD(TEXTMETRICA, LONG, tmAscent, 4, 4, 4); TEST_FIELD(TEXTMETRICA, LONG, tmDescent, 8, 4, 4); TEST_FIELD(TEXTMETRICA, LONG, tmInternalLeading, 12, 4, 4); TEST_FIELD(TEXTMETRICA, LONG, tmExternalLeading, 16, 4, 4); TEST_FIELD(TEXTMETRICA, LONG, tmAveCharWidth, 20, 4, 4); TEST_FIELD(TEXTMETRICA, LONG, tmMaxCharWidth, 24, 4, 4); TEST_FIELD(TEXTMETRICA, LONG, tmWeight, 28, 4, 4); TEST_FIELD(TEXTMETRICA, LONG, tmOverhang, 32, 4, 4); TEST_FIELD(TEXTMETRICA, LONG, tmDigitizedAspectX, 36, 4, 4); TEST_FIELD(TEXTMETRICA, LONG, tmDigitizedAspectY, 40, 4, 4); TEST_FIELD(TEXTMETRICA, BYTE, tmFirstChar, 44, 1, 1); TEST_FIELD(TEXTMETRICA, BYTE, tmLastChar, 45, 1, 1); TEST_FIELD(TEXTMETRICA, BYTE, tmDefaultChar, 46, 1, 1); TEST_FIELD(TEXTMETRICA, BYTE, tmBreakChar, 47, 1, 1); TEST_FIELD(TEXTMETRICA, BYTE, tmItalic, 48, 1, 1); TEST_FIELD(TEXTMETRICA, BYTE, tmUnderlined, 49, 1, 1); TEST_FIELD(TEXTMETRICA, BYTE, tmStruckOut, 50, 1, 1); TEST_FIELD(TEXTMETRICA, BYTE, tmPitchAndFamily, 51, 1, 1); TEST_FIELD(TEXTMETRICA, BYTE, tmCharSet, 52, 1, 1); /* TEXTMETRICW (pack 4) */ TEST_TYPE(TEXTMETRICW, 60, 4); TEST_FIELD(TEXTMETRICW, LONG, tmHeight, 0, 4, 4); TEST_FIELD(TEXTMETRICW, LONG, tmAscent, 4, 4, 4); TEST_FIELD(TEXTMETRICW, LONG, tmDescent, 8, 4, 4); TEST_FIELD(TEXTMETRICW, LONG, tmInternalLeading, 12, 4, 4); TEST_FIELD(TEXTMETRICW, LONG, tmExternalLeading, 16, 4, 4); TEST_FIELD(TEXTMETRICW, LONG, tmAveCharWidth, 20, 4, 4); TEST_FIELD(TEXTMETRICW, LONG, tmMaxCharWidth, 24, 4, 4); TEST_FIELD(TEXTMETRICW, LONG, tmWeight, 28, 4, 4); TEST_FIELD(TEXTMETRICW, LONG, tmOverhang, 32, 4, 4); TEST_FIELD(TEXTMETRICW, LONG, tmDigitizedAspectX, 36, 4, 4); TEST_FIELD(TEXTMETRICW, LONG, tmDigitizedAspectY, 40, 4, 4); TEST_FIELD(TEXTMETRICW, WCHAR, tmFirstChar, 44, 2, 2); TEST_FIELD(TEXTMETRICW, WCHAR, tmLastChar, 46, 2, 2); TEST_FIELD(TEXTMETRICW, WCHAR, tmDefaultChar, 48, 2, 2); TEST_FIELD(TEXTMETRICW, WCHAR, tmBreakChar, 50, 2, 2); TEST_FIELD(TEXTMETRICW, BYTE, tmItalic, 52, 1, 1); TEST_FIELD(TEXTMETRICW, BYTE, tmUnderlined, 53, 1, 1); TEST_FIELD(TEXTMETRICW, BYTE, tmStruckOut, 54, 1, 1); TEST_FIELD(TEXTMETRICW, BYTE, tmPitchAndFamily, 55, 1, 1); TEST_FIELD(TEXTMETRICW, BYTE, tmCharSet, 56, 1, 1); /* TRIVERTEX (pack 4) */ TEST_TYPE(TRIVERTEX, 16, 4); TEST_FIELD(TRIVERTEX, LONG, x, 0, 4, 4); TEST_FIELD(TRIVERTEX, LONG, y, 4, 4, 4); TEST_FIELD(TRIVERTEX, COLOR16, Red, 8, 2, 2); TEST_FIELD(TRIVERTEX, COLOR16, Green, 10, 2, 2); TEST_FIELD(TRIVERTEX, COLOR16, Blue, 12, 2, 2); TEST_FIELD(TRIVERTEX, COLOR16, Alpha, 14, 2, 2); /* TTPOLYCURVE (pack 4) */ TEST_TYPE(TTPOLYCURVE, 12, 2); TEST_FIELD(TTPOLYCURVE, WORD, wType, 0, 2, 2); TEST_FIELD(TTPOLYCURVE, WORD, cpfx, 2, 2, 2); TEST_FIELD(TTPOLYCURVE, POINTFX[1], apfx, 4, 8, 2); /* TTPOLYGONHEADER (pack 4) */ TEST_TYPE(TTPOLYGONHEADER, 16, 4); TEST_FIELD(TTPOLYGONHEADER, DWORD, cb, 0, 4, 4); TEST_FIELD(TTPOLYGONHEADER, DWORD, dwType, 4, 4, 4); TEST_FIELD(TTPOLYGONHEADER, POINTFX, pfxStart, 8, 8, 2); /* XFORM (pack 4) */ TEST_TYPE(XFORM, 24, 4); TEST_FIELD(XFORM, FLOAT, eM11, 0, 4, 4); TEST_FIELD(XFORM, FLOAT, eM12, 4, 4, 4); TEST_FIELD(XFORM, FLOAT, eM21, 8, 4, 4); TEST_FIELD(XFORM, FLOAT, eM22, 12, 4, 4); TEST_FIELD(XFORM, FLOAT, eDx, 16, 4, 4); TEST_FIELD(XFORM, FLOAT, eDy, 20, 4, 4); } START_TEST(generated) { test_pack(); }