[WIN32K]
[reactos.git] / subsystems / win32 / win32k / include / bitmaps.h
1 #pragma once
2
3 #include "surface.h"
4
5 typedef struct tagBITMAPV5INFO
6 {
7 BITMAPV5HEADER bmiHeader;
8 RGBQUAD bmiColors[256];
9 } BITMAPV5INFO, *PBITMAPV5INFO;
10
11 INT APIENTRY BITMAP_GetObject(SURFACE * bmp, INT count, LPVOID buffer);
12 HBITMAP FASTCALL IntCreateBitmap(IN SIZEL Size, IN LONG Width, IN ULONG Format, IN ULONG Flags, IN PVOID Bits);
13 HBITMAP FASTCALL BITMAP_CopyBitmap (HBITMAP hBitmap);
14 UINT FASTCALL BITMAP_GetRealBitsPixel(UINT nBitsPixel);
15 INT FASTCALL BITMAP_GetWidthBytes (INT bmWidth, INT bpp);
16 NTSTATUS FASTCALL ProbeAndConvertToBitmapV5Info( OUT PBITMAPV5INFO pbmiDst, IN CONST BITMAPINFO* pbmiUnsafe, IN DWORD dwUse, UINT MaxSize);
17
18 HBITMAP
19 APIENTRY
20 GreCreateBitmap(
21 IN INT nWidth,
22 IN INT nHeight,
23 IN UINT cPlanes,
24 IN UINT cBitsPixel,
25 IN OPTIONAL PVOID pvBits);
26
27 HBITMAP
28 APIENTRY
29 GreCreateBitmapEx(
30 IN INT nWidth,
31 IN INT nHeight,
32 IN ULONG cjWidthBytes,
33 IN ULONG iFormat,
34 IN USHORT fjBitmap,
35 IN ULONG cjBits,
36 IN OPTIONAL PVOID pvBits);
37
38 HBITMAP
39 FASTCALL
40 GreCreateDIBitmapInternal(
41 IN HDC hDc,
42 IN INT cx,
43 IN INT cy,
44 IN DWORD fInit,
45 IN OPTIONAL LPBYTE pjInit,
46 IN OPTIONAL PBITMAPV5INFO pbmi,
47 IN DWORD iUsage,
48 IN FLONG fl,
49 IN HANDLE hcmXform);