2 * Copyright 2016 Henri Verbeet for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #ifndef __WINE_D3DUKMDT_H
20 #define __WINE_D3DUKMDT_H
23 #define MAKEFOURCC(ch0, ch1, ch2, ch3) \
24 ((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | \
25 ((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24))
26 #endif /* MAKEFOURCC */
28 typedef UINT D3DKMT_HANDLE
;
30 typedef enum _D3DDDIFORMAT
32 D3DDDIFMT_UNKNOWN
= 0,
33 D3DDDIFMT_R8G8B8
= 0x14,
34 D3DDDIFMT_A8R8G8B8
= 0x15,
35 D3DDDIFMT_X8R8G8B8
= 0x16,
36 D3DDDIFMT_R5G6B5
= 0x17,
37 D3DDDIFMT_X1R5G5B5
= 0x18,
38 D3DDDIFMT_A1R5G5B5
= 0x19,
39 D3DDDIFMT_A4R4G4B4
= 0x1a,
40 D3DDDIFMT_R3G3B2
= 0x1b,
42 D3DDDIFMT_A8R3G3B2
= 0x1d,
43 D3DDDIFMT_X4R4G4B4
= 0x1e,
44 D3DDDIFMT_A2B10G10R10
= 0x1f,
45 D3DDDIFMT_A8B8G8R8
= 0x20,
46 D3DDDIFMT_X8B8G8R8
= 0x21,
47 D3DDDIFMT_G16R16
= 0x22,
48 D3DDDIFMT_A2R10G10B10
= 0x23,
49 D3DDDIFMT_A16B16G16R16
= 0x24,
50 D3DDDIFMT_A8P8
= 0x28,
53 D3DDDIFMT_A8L8
= 0x33,
54 D3DDDIFMT_A4L4
= 0x34,
55 D3DDDIFMT_V8U8
= 0x3c,
56 D3DDDIFMT_L6V5U5
= 0x3d,
57 D3DDDIFMT_X8L8V8U8
= 0x3e,
58 D3DDDIFMT_Q8W8V8U8
= 0x3f,
59 D3DDDIFMT_V16U16
= 0x40,
60 D3DDDIFMT_W11V11U10
= 0x41,
61 D3DDDIFMT_A2W10V10U10
= 0x43,
62 D3DDDIFMT_D16_LOCKABLE
= 0x46,
64 D3DDDIFMT_S1D15
= 0x48,
65 D3DDDIFMT_D15S1
= 0x49,
66 D3DDDIFMT_S8D24
= 0x4a,
67 D3DDDIFMT_D24S8
= 0x4b,
68 D3DDDIFMT_X8D24
= 0x4c,
69 D3DDDIFMT_D24X8
= 0x4d,
70 D3DDDIFMT_X4S4D24
= 0x4e,
71 D3DDDIFMT_D24X4S4
= 0x4f,
74 D3DDDIFMT_D32F_LOCKABLE
= 0x52,
75 D3DDDIFMT_D24FS8
= 0x53,
76 D3DDDIFMT_D32_LOCKABLE
= 0x54,
77 D3DDDIFMT_S8_LOCKABLE
= 0x55,
78 D3DDDIFMT_G8R8
= 0x5b,
80 D3DDDIFMT_VERTEXDATA
= 0x64,
81 D3DDDIFMT_INDEX16
= 0x65,
82 D3DDDIFMT_INDEX32
= 0x66,
83 D3DDDIFMT_Q16W16V16U16
= 0x6e,
84 D3DDDIFMT_R16F
= 0x6f,
85 D3DDDIFMT_G16R16F
= 0x70,
86 D3DDDIFMT_A16B16G16R16F
= 0x71,
87 D3DDDIFMT_R32F
= 0x72,
88 D3DDDIFMT_G32R32F
= 0x73,
89 D3DDDIFMT_A32B32G32R32F
= 0x74,
90 D3DDDIFMT_CxV8U8
= 0x75,
92 D3DDDIFMT_A2B10G10R10_XR_BIAS
= 0x77,
93 D3DDDIFMT_DXVACOMPBUFFER_BASE
= 0x96,
94 D3DDDIFMT_PICTUREPARAMSDATA
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0,
95 D3DDDIFMT_MACROBLOCKDATA
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x01,
96 D3DDDIFMT_RESIDUALDIFFERENCEDATA
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x02,
97 D3DDDIFMT_DEBLOCKINGDATA
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x03,
98 D3DDDIFMT_INVERSEQUANTIZATIONDATA
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x04,
99 D3DDDIFMT_SLICECONTROLDATA
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x05,
100 D3DDDIFMT_BITSTREAMDATA
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x06,
101 D3DDDIFMT_MOTIONVECTORBUFFER
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x07,
102 D3DDDIFMT_FILMGRAINBUFFER
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x08,
103 D3DDDIFMT_DXVA_RESERVED9
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x09,
104 D3DDDIFMT_DXVA_RESERVED10
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x0a,
105 D3DDDIFMT_DXVA_RESERVED11
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x0b,
106 D3DDDIFMT_DXVA_RESERVED12
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x0c,
107 D3DDDIFMT_DXVA_RESERVED13
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x0d,
108 D3DDDIFMT_DXVA_RESERVED14
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x0e,
109 D3DDDIFMT_DXVA_RESERVED15
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x0f,
110 D3DDDIFMT_DXVA_RESERVED16
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x10,
111 D3DDDIFMT_DXVA_RESERVED17
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x11,
112 D3DDDIFMT_DXVA_RESERVED18
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x12,
113 D3DDDIFMT_DXVA_RESERVED19
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x13,
114 D3DDDIFMT_DXVA_RESERVED20
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x14,
115 D3DDDIFMT_DXVA_RESERVED21
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x15,
116 D3DDDIFMT_DXVA_RESERVED22
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x16,
117 D3DDDIFMT_DXVA_RESERVED23
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x17,
118 D3DDDIFMT_DXVA_RESERVED24
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x18,
119 D3DDDIFMT_DXVA_RESERVED25
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x19,
120 D3DDDIFMT_DXVA_RESERVED26
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x1a,
121 D3DDDIFMT_DXVA_RESERVED27
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x1b,
122 D3DDDIFMT_DXVA_RESERVED28
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x1c,
123 D3DDDIFMT_DXVA_RESERVED29
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x1d,
124 D3DDDIFMT_DXVA_RESERVED30
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x1e,
125 D3DDDIFMT_DXVA_RESERVED31
= D3DDDIFMT_DXVACOMPBUFFER_BASE
+ 0x1f,
126 D3DDDIFMT_DXVACOMPBUFFER_MAX
= D3DDDIFMT_DXVA_RESERVED31
,
127 D3DDDIFMT_BINARYBUFFER
= 0xc7,
128 D3DDDIFMT_DXT1
= MAKEFOURCC('D', 'X', 'T', '1'),
129 D3DDDIFMT_DXT2
= MAKEFOURCC('D', 'X', 'T', '2'),
130 D3DDDIFMT_DXT3
= MAKEFOURCC('D', 'X', 'T', '3'),
131 D3DDDIFMT_DXT4
= MAKEFOURCC('D', 'X', 'T', '4'),
132 D3DDDIFMT_DXT5
= MAKEFOURCC('D', 'X', 'T', '5'),
133 D3DDDIFMT_G8R8_G8B8
= MAKEFOURCC('G', 'R', 'G', 'B'),
134 D3DDDIFMT_MULTI2_ARGB8
= MAKEFOURCC('M', 'E', 'T', '1'),
135 D3DDDIFMT_R8G8_B8G8
= MAKEFOURCC('R', 'G', 'B', 'G'),
136 D3DDDIFMT_UYVY
= MAKEFOURCC('U', 'Y', 'V', 'Y'),
137 D3DDDIFMT_YUY2
= MAKEFOURCC('Y', 'U', 'Y', '2'),
138 D3DDDIFMT_FORCE_UINT
= 0x7fffffff,
141 typedef UINT D3DDDI_VIDEO_PRESENT_SOURCE_ID
;
143 #endif /* __WINE_D3DUKMDT_H */