1 module directx.d3dukmdt;
2 /******************************Module*Header************************************\
3  *
4  * Module Name: d3dukmdt.h
5  *
6  * Content: Longhorn Display Driver Model (LDDM) user/kernel mode
7  *          shared data type definitions.
8  *
9  * Copyright (c) 2003 Microsoft Corporation.  All rights reserved.
10 \*******************************************************************************/
11 
12 import std.bitmanip : bitfields;
13 
14 public import directx.win32;
15 
16 alias UINT  D3DDDI_VIDEO_PRESENT_SOURCE_ID;
17 alias UINT  D3DDDI_VIDEO_PRESENT_TARGET_ID;
18 
19 alias UINT D3DKMT_HANDLE;
20 
21 alias DWORD D3DDDI_OFFER_PRIORITY;
22 enum : D3DDDI_OFFER_PRIORITY
23 {
24     D3DDDI_OFFER_PRIORITY_NONE=0,               // Do not offer
25     D3DDDI_OFFER_PRIORITY_LOW=1,                // Content is not useful
26     D3DDDI_OFFER_PRIORITY_NORMAL,               // Content is useful but easy to regenerate
27     D3DDDI_OFFER_PRIORITY_HIGH,                 // Content is useful and difficult to regenerate
28     D3DDDI_OFFER_PRIORITY_AUTO,                 // Let VidMm decide offer priority based on eviction priority
29 }
30 
31 struct D3DDDI_TRIMRESIDENCYSET_FLAGS
32 {
33     union
34     {
35         mixin(bitfields!(UINT, "PeriodicTrim",         1,
36                          UINT, "RestartPeriodicTrim",  1,
37                          UINT, "TrimToBudget",         1,
38                          UINT, "Reserved",            29));
39 
40         UINT Value;
41     }
42 }
43 
44 alias DWORD D3DDDI_COLOR_SPACE_TYPE;
45 enum : D3DDDI_COLOR_SPACE_TYPE
46 {
47     D3DDDI_COLOR_SPACE_RGB_FULL_G22_NONE_P709             = 0,
48     D3DDDI_COLOR_SPACE_RGB_FULL_G10_NONE_P709             = 1,
49     D3DDDI_COLOR_SPACE_RGB_STUDIO_G22_NONE_P709           = 2,
50     D3DDDI_COLOR_SPACE_RGB_STUDIO_G22_NONE_P2020          = 3,
51     D3DDDI_COLOR_SPACE_RESERVED                           = 4,
52     D3DDDI_COLOR_SPACE_YCBCR_FULL_G22_NONE_P709_X601      = 5,
53     D3DDDI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P601         = 6,
54     D3DDDI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P601           = 7,
55     D3DDDI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P709         = 8,
56     D3DDDI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P709           = 9,
57     D3DDDI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P2020        = 10,
58     D3DDDI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P2020          = 11,
59     D3DDDI_COLOR_SPACE_CUSTOM                             = 0xFFFFFFFF
60 }
61 
62 enum D3DDDI_MAX_BROADCAST_CONTEXT = 64;