ReactOS 0.4.16-dev-974-g5022a45
d3dkmddi.h
Go to the documentation of this file.
1/*
2 * PROJECT: ReactOS Display Driver Model
3 * LICENSE: MIT (https://spdx.org/licenses/MIT)
4 * PURPOSE: Header file for WDDM style DDIs
5 * COPYRIGHT: Copyright 2024 Justin Miller <justin.miller@reactos.org>
6 */
7
8#ifndef _D3DKMDDI_H_
9#define _D3DKMDDI_H_
10
11#include <d3dkmdt.h>
12
14{
15 union
16 {
17 struct
18 {
29#if (DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WDDM2_1)
31#else
32 UINT Reserved00 : 1;
33#endif
36#if (DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WDDM2_9)
38#else
39 UINT Reserved03 : 1;
40#endif
59 };
61 };
64
66{
67 union
68 {
69 struct
70 {
82 };
84 };
87
89{
90 union
91 {
92 struct
93 {
102 };
104 };
107
109{
110 union
111 {
112 struct
113 {
129#if (DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WDDM2_0)
134#else
135 UINT Reserved : 4;
136#endif
150 };
152 };
155
157{
158 union
159 {
160 struct
161 {
170 };
173 union
174 {
175 D3DDDIFORMAT Format;
177 };
187
189{
194
196{
207 union
208 {
211 };
213 union
214 {
216#if (DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WDDM2_0)
218#endif
219 };
222#if (DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WDDM3_0)
223 DXGK_ALLOCATIONINFOFLAGS2 Flags2;
224#endif
226
227#ifdef _WIN64
228#if (DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WDDM3_0)
229C_ASSERT(sizeof(DXGK_ALLOCATIONINFO) == 0x5C);
230#else
231C_ASSERT(sizeof(DXGK_ALLOCATIONINFO) == 0x58);
232#endif
233#else
234#if (DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WDDM3_0)
236#else
237C_ASSERT(sizeof(DXGK_ALLOCATIONINFO) == 0x3C);
238#endif
239#endif
240
241#endif // _D3DKMDDI_H_
struct _DXGK_SEGMENTPREFERENCE DXGK_SEGMENTPREFERENCE
struct _DXGK_ALLOCATIONINFO DXGK_ALLOCATIONINFO
struct _DXGK_ALLOCATIONUSAGEHINT DXGK_ALLOCATIONUSAGEHINT
struct _DXGK_ALLOCATIONINFOFLAGS_WDDM2_0 DXGK_ALLOCATIONINFOFLAGS_WDDM2_0
struct _DXGK_ALLOCATIONINFOFLAGS DXGK_ALLOCATIONINFOFLAGS
struct _DXGK_ALLOCATIONUSAGEINFO1 DXGK_ALLOCATIONUSAGEINFO1
struct _DXGK_SEGMENTBANKPREFERENCE DXGK_SEGMENTBANKPREFERENCE
struct _DXGK_SEGMENTPREFERENCE * PDXGK_SEGMENTPREFERENCE
#define C_ASSERT(e)
Definition: intsafe.h:73
unsigned int UINT
Definition: ndis.h:50
DXGK_ALLOCATIONINFOFLAGS2 Flags2
Definition: d3dkmddi.h:223
UINT PrivateDriverDataSize
Definition: d3dkmddi.h:198
VOID * pPrivateDriverData
Definition: d3dkmddi.h:197
DXGK_ALLOCATIONINFOFLAGS_WDDM2_0 FlagsWddm2
Definition: d3dkmddi.h:217
UINT MaximumRenamingListLength
Definition: d3dkmddi.h:209
UINT SupportedReadSegmentSet
Definition: d3dkmddi.h:204
SIZE_T PitchAlignedSize
Definition: d3dkmddi.h:201
UINT SupportedWriteSegmentSet
Definition: d3dkmddi.h:205
DXGK_ALLOCATIONUSAGEHINT * pAllocationUsageHint
Definition: d3dkmddi.h:220
DXGK_SEGMENTPREFERENCE PreferredSegment
Definition: d3dkmddi.h:203
DXGK_ALLOCATIONINFOFLAGS Flags
Definition: d3dkmddi.h:215
DXGK_SEGMENTBANKPREFERENCE HintedBank
Definition: d3dkmddi.h:202
DXGK_ALLOCATIONUSAGEINFO1 v1
Definition: d3dkmddi.h:191
union _DXGK_ALLOCATIONUSAGEINFO1::@2004 Flags
ULONG_PTR SIZE_T
Definition: typedefs.h:80
_Reserved_ PVOID Reserved
Definition: winddi.h:3974