root/trunk/win32/directx/dxgitype.d

Revision 222, 6.0 kB (checked in by WeirdCat, 5 years ago)

a little bit more from the D3D10 headers

Line 
1 /***********************************************************************\
2 *                                dxgitype.d                             *
3 *                                                                       *
4 *                       Windows API header module                       *
5 *                                                                       *
6 *                       Placed into public domain                       *
7 \***********************************************************************/
8 module win32.directx.dxgitype;
9
10 private import win32.windows;
11
12 const _FACDXGI = 0x87a;
13
14 HRESULT MAKE_DXGI_HRESULT(T)(T code) {
15     return MAKE_HRESULT(1, _FACDXGI, code);
16 }
17
18 HRESULT MAKE_DXGI_STATUS(T)(T code) {
19     return MAKE_HRESULT(0, _FACDXGI, code);
20 }
21
22 const HRESULT DXGI_STATUS_OCCLUDED                      = MAKE_DXGI_STATUS(1);
23 const HRESULT DXGI_STATUS_CLIPPED                       = MAKE_DXGI_STATUS(2);
24 const HRESULT DXGI_STATUS_NO_REDIRECTION                = MAKE_DXGI_STATUS(4);
25 const HRESULT DXGI_STATUS_NO_DESKTOP_ACCESS             = MAKE_DXGI_STATUS(5);
26 const HRESULT DXGI_STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE  = MAKE_DXGI_STATUS(6);
27 const HRESULT DXGI_STATUS_MODE_CHANGED                  = MAKE_DXGI_STATUS(7);
28 const HRESULT DXGI_STATUS_MODE_CHANGE_IN_PROGRESS       = MAKE_DXGI_STATUS(8);
29 const HRESULT DXGI_ERROR_INVALID_CALL                   = MAKE_DXGI_HRESULT( 1);
30 const HRESULT DXGI_ERROR_NOT_FOUND                      = MAKE_DXGI_HRESULT( 2);
31 const HRESULT DXGI_ERROR_MORE_DATA                      = MAKE_DXGI_HRESULT( 3);
32 const HRESULT DXGI_ERROR_UNSUPPORTED                    = MAKE_DXGI_HRESULT( 4);
33 const HRESULT DXGI_ERROR_DEVICE_REMOVED                 = MAKE_DXGI_HRESULT( 5);
34 const HRESULT DXGI_ERROR_DEVICE_HUNG                    = MAKE_DXGI_HRESULT( 6);
35 const HRESULT DXGI_ERROR_DEVICE_RESET                   = MAKE_DXGI_HRESULT( 7);
36 const HRESULT DXGI_ERROR_WAS_STILL_DRAWING              = MAKE_DXGI_HRESULT(10);
37 const HRESULT DXGI_ERROR_FRAME_STATISTICS_DISJOINT      = MAKE_DXGI_HRESULT(11);
38 const HRESULT DXGI_ERROR_GRAPHICS_VIDPN_SOURCE_IN_USE   = MAKE_DXGI_HRESULT(12);
39 const HRESULT DXGI_ERROR_DRIVER_INTERNAL_ERROR          = MAKE_DXGI_HRESULT(32);
40 const HRESULT DXGI_ERROR_NONEXCLUSIVE                   = MAKE_DXGI_HRESULT(33);
41 const HRESULT DXGI_ERROR_NOT_CURRENTLY_AVAILABLE        = MAKE_DXGI_HRESULT(34);
42 const HRESULT DXGI_FORMAT_DEFINED                       = 1;
43
44 enum DXGI_FORMAT {
45     DXGI_FORMAT_UNKNOWN                     = 0,
46     DXGI_FORMAT_R32G32B32A32_TYPELESS,
47     DXGI_FORMAT_R32G32B32A32_FLOAT,
48     DXGI_FORMAT_R32G32B32A32_UINT,
49     DXGI_FORMAT_R32G32B32A32_SINT,
50     DXGI_FORMAT_R32G32B32_TYPELESS,
51     DXGI_FORMAT_R32G32B32_FLOAT,
52     DXGI_FORMAT_R32G32B32_UINT,
53     DXGI_FORMAT_R32G32B32_SINT,
54     DXGI_FORMAT_R16G16B16A16_TYPELESS,
55     DXGI_FORMAT_R16G16B16A16_FLOAT,
56     DXGI_FORMAT_R16G16B16A16_UNORM,
57     DXGI_FORMAT_R16G16B16A16_UINT,
58     DXGI_FORMAT_R16G16B16A16_SNORM,
59     DXGI_FORMAT_R16G16B16A16_SINT,
60     DXGI_FORMAT_R32G32_TYPELESS,
61     DXGI_FORMAT_R32G32_FLOAT,
62     DXGI_FORMAT_R32G32_UINT,
63     DXGI_FORMAT_R32G32_SINT,
64     DXGI_FORMAT_R32G8X24_TYPELESS,
65     DXGI_FORMAT_D32_FLOAT_S8X24_UINT,
66     DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS,
67     DXGI_FORMAT_X32_TYPELESS_G8X24_UINT,
68     DXGI_FORMAT_R10G10B10A2_TYPELESS,
69     DXGI_FORMAT_R10G10B10A2_UNORM,
70     DXGI_FORMAT_R10G10B10A2_UINT,
71     DXGI_FORMAT_R11G11B10_FLOAT,
72     DXGI_FORMAT_R8G8B8A8_TYPELESS,
73     DXGI_FORMAT_R8G8B8A8_UNORM,
74     DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
75     DXGI_FORMAT_R8G8B8A8_UINT,
76     DXGI_FORMAT_R8G8B8A8_SNORM,
77     DXGI_FORMAT_R8G8B8A8_SINT,
78     DXGI_FORMAT_R16G16_TYPELESS,
79     DXGI_FORMAT_R16G16_FLOAT,
80     DXGI_FORMAT_R16G16_UNORM,
81     DXGI_FORMAT_R16G16_UINT,
82     DXGI_FORMAT_R16G16_SNORM,
83     DXGI_FORMAT_R16G16_SINT,
84     DXGI_FORMAT_R32_TYPELESS,
85     DXGI_FORMAT_D32_FLOAT,
86     DXGI_FORMAT_R32_FLOAT,
87     DXGI_FORMAT_R32_UINT,
88     DXGI_FORMAT_R32_SINT,
89     DXGI_FORMAT_R24G8_TYPELESS,
90     DXGI_FORMAT_D24_UNORM_S8_UINT,
91     DXGI_FORMAT_R24_UNORM_X8_TYPELESS,
92     DXGI_FORMAT_X24_TYPELESS_G8_UINT,
93     DXGI_FORMAT_R8G8_TYPELESS,
94     DXGI_FORMAT_R8G8_UNORM,
95     DXGI_FORMAT_R8G8_UINT,
96     DXGI_FORMAT_R8G8_SNORM,
97     DXGI_FORMAT_R8G8_SINT,
98     DXGI_FORMAT_R16_TYPELESS,
99     DXGI_FORMAT_R16_FLOAT,
100     DXGI_FORMAT_D16_UNORM,
101     DXGI_FORMAT_R16_UNORM,
102     DXGI_FORMAT_R16_UINT,
103     DXGI_FORMAT_R16_SNORM,
104     DXGI_FORMAT_R16_SINT,
105     DXGI_FORMAT_R8_TYPELESS,
106     DXGI_FORMAT_R8_UNORM,
107     DXGI_FORMAT_R8_UINT,
108     DXGI_FORMAT_R8_SNORM,
109     DXGI_FORMAT_R8_SINT,
110     DXGI_FORMAT_A8_UNORM,
111     DXGI_FORMAT_R1_UNORM,
112     DXGI_FORMAT_R9G9B9E5_SHAREDEXP,
113     DXGI_FORMAT_R8G8_B8G8_UNORM,
114     DXGI_FORMAT_G8R8_G8B8_UNORM,
115     DXGI_FORMAT_BC1_TYPELESS,
116     DXGI_FORMAT_BC1_UNORM,
117     DXGI_FORMAT_BC1_UNORM_SRGB,
118     DXGI_FORMAT_BC2_TYPELESS,
119     DXGI_FORMAT_BC2_UNORM,
120     DXGI_FORMAT_BC2_UNORM_SRGB,
121     DXGI_FORMAT_BC3_TYPELESS,
122     DXGI_FORMAT_BC3_UNORM,
123     DXGI_FORMAT_BC3_UNORM_SRGB,
124     DXGI_FORMAT_BC4_TYPELESS,
125     DXGI_FORMAT_BC4_UNORM,
126     DXGI_FORMAT_BC4_SNORM,
127     DXGI_FORMAT_BC5_TYPELESS,
128     DXGI_FORMAT_BC5_UNORM,
129     DXGI_FORMAT_BC5_SNORM,
130     DXGI_FORMAT_B5G6R5_UNORM,
131     DXGI_FORMAT_B5G5R5A1_UNORM,
132     DXGI_FORMAT_B8G8R8A8_UNORM,
133     DXGI_FORMAT_B8G8R8X8_UNORM,
134     DXGI_FORMAT_FORCE_UINT          = 0xffffffff
135 }
136
137 struct DXGI_RGB {
138     float Red;
139     float Green;
140     float Blue;
141 }
142
143 struct DXGI_GAMMA_CONTROL {
144     DXGI_RGB Scale;
145     DXGI_RGB Offset;
146     DXGI_RGB[1025] GammaCurve;
147 }
148
149 struct DXGI_GAMMA_CONTROL_CAPABILITIES {
150     BOOL ScaleAndOffsetSupported;
151     float MaxConvertedValue;
152     float MinConvertedValue;
153     UINT NumGammaControlPoints;
154     float[1025] ControlPointPositions;
155 }
156
157 struct DXGI_RATIONAL {
158     UINT Numerator;
159     UINT Denominator;
160 }
161
162 enum DXGI_MODE_SCANLINE_ORDER {
163     DXGI_MODE_SCANLINE_ORDER_UNSPECIFIED        = 0,
164     DXGI_MODE_SCANLINE_ORDER_PROGRESSIVE        = 1,
165     DXGI_MODE_SCANLINE_ORDER_UPPER_FIELD_FIRST  = 2,
166     DXGI_MODE_SCANLINE_ORDER_LOWER_FIELD_FIRST  = 3
167 }
168
169 enum DXGI_MODE_SCALING {
170     DXGI_MODE_SCALING_UNSPECIFIED   = 0,
171     DXGI_MODE_SCALING_CENTERED      = 1,
172     DXGI_MODE_SCALING_STRETCHED     = 2
173 }
174
175 enum DXGI_MODE_ROTATION {
176     DXGI_MODE_ROTATION_UNSPECIFIED  = 0,
177     DXGI_MODE_ROTATION_IDENTITY     = 1,
178     DXGI_MODE_ROTATION_ROTATE90     = 2,
179     DXGI_MODE_ROTATION_ROTATE180    = 3,
180     DXGI_MODE_ROTATION_ROTATE270    = 4
181 }
182
183 struct DXGI_MODE_DESC {
184     UINT Width;
185     UINT Height;
186     DXGI_RATIONAL RefreshRate;
187     DXGI_FORMAT Format;
188     DXGI_MODE_SCANLINE_ORDER ScanlineOrdering;
189     DXGI_MODE_SCALING Scaling;
190 }
191
192 struct DXGI_SAMPLE_DESC {
193     UINT Count;
194     UINT Quality;
195 }
Note: See TracBrowser for help on using the browser.