File: bitmapinfoheader.h

package info (click to toggle)
dosbox-x 2026.01.02%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 53,220 kB
  • sloc: cpp: 341,269; ansic: 165,494; sh: 1,463; makefile: 967; perl: 385; python: 106; asm: 57
file content (143 lines) | stat: -rw-r--r-- 5,787 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143

#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