dosbox-x/include/bitmapinfoheader.h
2021-08-31 00:19:14 +09:00

144 lines
5.7 KiB
C

#ifndef __ISP_UTILS_V4_BITMAPINFOHEADER
#define __ISP_UTILS_V4_BITMAPINFOHEADER
#include "guid.h"
/* [doc] windows_BITMAPFILEHEADER
*
* Packed portable representation of the Microsoft Windows BITMAPFILEHEADER
* structure.
*/
typedef struct { /* (sizeof) (offset hex) (offset dec) */
uint16_t _Little_Endian_ bfType; /* (2) +0x00 +0 */
uint32_t _Little_Endian_ bfSize; /* (4) +0x02 +2 */
uint16_t _Little_Endian_ bfReserved1; /* (2) +0x06 +6 */
uint16_t _Little_Endian_ bfReserved2; /* (2) +0x08 +8 */
uint32_t _Little_Endian_ bfOffBits; /* (4) +0x0A +10 */
} GCC_ATTRIBUTE(packed) windows_BITMAPFILEHEADER; /* (14) =0x0E =14 */
static const windows_BITMAPFILEHEADER WINDOWS_BITMAPFILEHEADER_INIT = {
0,
0,
0,
0,
0
};
/* [doc] windows_BITMAPINFOHEADER
*
* Packed portable representation of the Microsoft Windows BITMAPINFOHEADER
* structure.
*/
typedef struct { /* (sizeof) (offset hex) (offset dec) */
uint32_t _Little_Endian_ biSize; /* (4) +0x00 +0 */
int32_t _Little_Endian_ biWidth; /* (4) +0x04 +4 */
int32_t _Little_Endian_ biHeight; /* (4) +0x08 +8 */
uint16_t _Little_Endian_ biPlanes; /* (2) +0x0C +12 */
uint16_t _Little_Endian_ biBitCount; /* (2) +0x0E +14 */
uint32_t _Little_Endian_ biCompression; /* (4) +0x10 +16 */
uint32_t _Little_Endian_ biSizeImage; /* (4) +0x14 +20 */
int32_t _Little_Endian_ biXPelsPerMeter; /* (4) +0x18 +24 */
int32_t _Little_Endian_ biYPelsPerMeter; /* (4) +0x1C +28 */
uint32_t _Little_Endian_ biClrUsed; /* (4) +0x20 +32 */
uint32_t _Little_Endian_ biClrImportant; /* (4) +0x24 +36 */
} GCC_ATTRIBUTE(packed) windows_BITMAPINFOHEADER; /* (40) =0x28 =40 */
static const windows_BITMAPINFOHEADER WINDOWS_BITMAPINFOHEADER_INIT = {
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
};
/* [doc] windows_CIEXYZ
*
* Packed portable representation of the Microsoft Windows CIEXYZ
* structure.
*/
typedef struct { /* (sizeof) (offset hex) (offset dec) */
uint32_t _Little_Endian_ ciexyzX; /* (4) +0x00 +0 */
uint32_t _Little_Endian_ ciexyzY; /* (4) +0x04 +4 */
uint32_t _Little_Endian_ ciexyzZ; /* (4) +0x08 +8 */
} GCC_ATTRIBUTE(packed) windows_CIEXYZ; /* (12) =0x0C =12 */
/* [doc] windows_CIEXYZTRIPLE
*
* Packed portable representation of the Microsoft Windows CIEXYZTRIPLE
* structure.
*/
typedef struct { /* (sizeof) (offset hex) (offset dec) */
windows_CIEXYZ ciexyzRed; /* (12) +0x00 +0 */
windows_CIEXYZ ciexyzGreen; /* (12) +0x0C +12 */
windows_CIEXYZ ciexyzBlue; /* (12) +0x18 +24 */
} GCC_ATTRIBUTE(packed) windows_CIEXYZTRIPLE; /* (36) =0x24 =36 */
/* [doc] windows_BITMAPV4HEADER
*
* Packed portable representation of the Microsoft Windows BITMAPV4HEADER
* structure.
*/
typedef struct { /* (sizeof) (offset hex) (offset dec) */
uint32_t _Little_Endian_ bV4Size; /* (4) +0x00 +0 */
int32_t _Little_Endian_ bV4Width; /* (4) +0x04 +4 */
int32_t _Little_Endian_ bV4Height; /* (4) +0x08 +8 */
uint16_t _Little_Endian_ bV4Planes; /* (2) +0x0C +12 */
uint16_t _Little_Endian_ bV4BitCount; /* (2) +0x0E +14 */
uint32_t _Little_Endian_ bV4V4Compression; /* (4) +0x10 +16 */
uint32_t _Little_Endian_ bV4SizeImage; /* (4) +0x14 +20 */
int32_t _Little_Endian_ bV4XPelsPerMeter; /* (4) +0x18 +24 */
int32_t _Little_Endian_ bV4YPelsPerMeter; /* (4) +0x1C +28 */
uint32_t _Little_Endian_ bV4ClrUsed; /* (4) +0x20 +32 */
uint32_t _Little_Endian_ bV4ClrImportant; /* (4) +0x24 +36 */
uint32_t _Little_Endian_ bV4RedMask; /* (4) +0x28 +40 */
uint32_t _Little_Endian_ bV4GreenMask; /* (4) +0x2C +44 */
uint32_t _Little_Endian_ bV4BlueMask; /* (4) +0x30 +48 */
uint32_t _Little_Endian_ bV4AlphaMask; /* (4) +0x34 +52 */
uint32_t _Little_Endian_ bV4CSType; /* (4) +0x38 +56 */
windows_CIEXYZTRIPLE bV4Endpoints; /* (36) +0x3C +60 */
uint32_t _Little_Endian_ bV4GammaRed; /* (4) +0x60 +96 */
uint32_t _Little_Endian_ bV4GammaGreen; /* (4) +0x64 +100 */
uint32_t _Little_Endian_ bV4GammaBlue; /* (4) +0x68 +104 */
} GCC_ATTRIBUTE(packed) windows_BITMAPV4HEADER; /* (84) =0x6C =108 */
/* [doc] windows_BITMAPV5HEADER
*
* Packed portable representation of the Microsoft Windows BITMAPV5HEADER
* structure.
*/
typedef struct { /* (sizeof) (offset hex) (offset dec) */
uint32_t _Little_Endian_ bV5Size; /* (4) +0x00 +0 */
int32_t _Little_Endian_ bV5Width; /* (4) +0x04 +4 */
int32_t _Little_Endian_ bV5Height; /* (4) +0x08 +8 */
uint16_t _Little_Endian_ bV5Planes; /* (2) +0x0C +12 */
uint16_t _Little_Endian_ bV5BitCount; /* (2) +0x0E +14 */
uint32_t _Little_Endian_ bV5Compression; /* (4) +0x10 +16 */
uint32_t _Little_Endian_ bV5SizeImage; /* (4) +0x14 +20 */
int32_t _Little_Endian_ bV5XPelsPerMeter; /* (4) +0x18 +24 */
int32_t _Little_Endian_ bV5YPelsPerMeter; /* (4) +0x1C +28 */
uint32_t _Little_Endian_ bV5ClrUsed; /* (4) +0x20 +32 */
uint32_t _Little_Endian_ bV5ClrImportant; /* (4) +0x24 +36 */
uint32_t _Little_Endian_ bV5RedMask; /* (4) +0x28 +40 */
uint32_t _Little_Endian_ bV5GreenMask; /* (4) +0x2C +44 */
uint32_t _Little_Endian_ bV5BlueMask; /* (4) +0x30 +48 */
uint32_t _Little_Endian_ bV5AlphaMask; /* (4) +0x34 +52 */
uint32_t _Little_Endian_ bV5CSType; /* (4) +0x38 +56 */
windows_CIEXYZTRIPLE bV5Endpoints; /* (36) +0x3C +60 */
uint32_t _Little_Endian_ bV5GammaRed; /* (4) +0x60 +96 */
uint32_t _Little_Endian_ bV5GammaGreen; /* (4) +0x64 +100 */
uint32_t _Little_Endian_ bV5GammaBlue; /* (4) +0x68 +104 */
uint32_t _Little_Endian_ bV5Intent; /* (4) +0x6C +108 */
uint32_t _Little_Endian_ bV5ProfileData; /* (4) +0x70 +112 */
uint32_t _Little_Endian_ bV5ProfileSize; /* (4) +0x74 +116 */
uint32_t _Little_Endian_ bV5Reserved; /* (4) +0x78 +120 */
} GCC_ATTRIBUTE(packed) windows_BITMAPV5HEADER; /* (100) =0x7C =124 */
#endif