Process Hacker
d3dkmt.h
Go to the documentation of this file.
1 #ifndef _D3DKMT_H
2 #define _D3DKMT_H
3 
4 // D3D definitions
5 
6 typedef ULONG D3DKMT_HANDLE;
7 
9 {
10  _In_ PCWSTR pDeviceName;
12  _Out_ LUID AdapterLuid;
14 
15 typedef struct _D3DKMT_CLOSEADAPTER
16 {
19 
21 {
40 
42 {
49 
51 {
62 
64 {
72 
73 #define D3DKMT_QUERYSTATISTICS_SEGMENT_PREFERENCE_MAX 5
74 
76 {
77  ULONG Count;
78  ULONGLONG Bytes;
80 
82 {
88 
90 {
94 
96 {
100 
102 {
105 
107 {
108  LARGE_INTEGER RunningTime; // 100ns
112  ULONG64 Reserved[8];
114 
116 {
119  ULONG64 Reserved[8];
121 
123 {
124  ULONG Frame;
127  ULONG64 Reserved[8];
129 
131 {
134  ULONG64 Reserved[8];
136 
138 {
139  ULONG NbCall;
154 
156 {
167 
169 {
176 
178 {
191 
199 
201 {
202  ULONGLONG BytesFilled;
203  ULONGLONG BytesDiscarded;
211 
213 {
217 
219 {
220  ULONG NbLocks;
228 
230 {
239 
241 {
247 
249 {
250  ULONG NbSegments;
251  ULONG NodeCount;
253 
256 
258  ULONGLONG RestartedPeriod;
259 
269 
270  ULONG64 Reserved[8];
272 
274 {
275  ULONGLONG BytesAllocated;
276  ULONGLONG BytesReserved;
286 
288 {
289  ULONG NodeCount;
291 
293 
294  ULONG64 Reserved[8];
296 
298 {
303 
305 {
309 
311 {
314  ULONGLONG MemResetOnPaging;
316  ULONGLONG MigrationEnabled;
318 
320 {
321  ULONG NbSegments;
322  ULONG NodeCount;
324 
326 
330 
331  ULONG64 Reserved[8];
333 
335 {
336  ULONGLONG TotalBytesEvicted;
340 
342 {
343  ULONG CommitLimit;
346 
348 
349  ULONG Aperture; // boolean
350 
352 
354  struct
355  {
359  ULONG64 Reserved : 61;
360  } PowerFlags;
361 
362  ULONG64 Reserved[7];
364 
366 {
367  ULONGLONG CommitLimit;
368  ULONGLONG BytesCommitted;
369  ULONGLONG BytesResident;
370 
372 
373  ULONG Aperture; // boolean
374 
376 
378  struct
379  {
383  ULONG64 Reserved : 61;
384  } PowerFlags;
385 
386  ULONG64 Reserved[6];
388 
390 {
396 
398 {
399  ULONGLONG UseMRU;
401 
403 {
404  ULONGLONG BytesCommitted;
405  ULONGLONG MaximumWorkingSet;
406  ULONGLONG MinimumWorkingSet;
407 
409 
412 
413  ULONG64 Reserved[8];
415 
417 {
428 
430 {
431  ULONG SegmentId;
433 
435 {
436  ULONG NodeId;
438 
440 {
443 
445 {
457 
459 {
461  _In_ LUID AdapterLuid;
462  _In_opt_ HANDLE hProcess;
464 
465  union
466  {
473  };
475 
476 // Function pointers
477 
478 typedef _Check_return_ NTSTATUS (APIENTRY *PFND3DKMT_OPENADAPTERFROMDEVICENAME)(_Inout_ D3DKMT_OPENADAPTERFROMDEVICENAME *);
479 typedef _Check_return_ NTSTATUS (APIENTRY *PFND3DKMT_CLOSEADAPTER)(_In_ const D3DKMT_CLOSEADAPTER *);
480 typedef _Check_return_ NTSTATUS (APIENTRY *PFND3DKMT_QUERYSTATISTICS)(_In_ const D3DKMT_QUERYSTATISTICS *);
481 
482 #endif