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 version(Windows):
13 
14 import std.bitmanip : bitfields;
15 
16 public import directx.win32;
17 
18 alias UINT  D3DDDI_VIDEO_PRESENT_SOURCE_ID;
19 alias UINT  D3DDDI_VIDEO_PRESENT_TARGET_ID;
20 
21 alias UINT D3DKMT_HANDLE;
22 
23 alias DWORD D3DDDI_OFFER_PRIORITY;
24 enum : D3DDDI_OFFER_PRIORITY
25 {
26     D3DDDI_OFFER_PRIORITY_NONE=0,               // Do not offer
27     D3DDDI_OFFER_PRIORITY_LOW=1,                // Content is not useful
28     D3DDDI_OFFER_PRIORITY_NORMAL,               // Content is useful but easy to regenerate
29     D3DDDI_OFFER_PRIORITY_HIGH,                 // Content is useful and difficult to regenerate
30     D3DDDI_OFFER_PRIORITY_AUTO,                 // Let VidMm decide offer priority based on eviction priority
31 }
32 
33 struct D3DDDI_TRIMRESIDENCYSET_FLAGS
34 {
35     union
36     {
37         mixin(bitfields!(UINT, "PeriodicTrim",         1,
38                          UINT, "RestartPeriodicTrim",  1,
39                          UINT, "TrimToBudget",         1,
40                          UINT, "Reserved",            29));
41 
42         UINT Value;
43     }
44 }
45 
46 alias DWORD D3DDDI_COLOR_SPACE_TYPE;
47 enum : D3DDDI_COLOR_SPACE_TYPE
48 {
49     D3DDDI_COLOR_SPACE_RGB_FULL_G22_NONE_P709             = 0,
50     D3DDDI_COLOR_SPACE_RGB_FULL_G10_NONE_P709             = 1,
51     D3DDDI_COLOR_SPACE_RGB_STUDIO_G22_NONE_P709           = 2,
52     D3DDDI_COLOR_SPACE_RGB_STUDIO_G22_NONE_P2020          = 3,
53     D3DDDI_COLOR_SPACE_RESERVED                           = 4,
54     D3DDDI_COLOR_SPACE_YCBCR_FULL_G22_NONE_P709_X601      = 5,
55     D3DDDI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P601         = 6,
56     D3DDDI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P601           = 7,
57     D3DDDI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P709         = 8,
58     D3DDDI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P709           = 9,
59     D3DDDI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P2020        = 10,
60     D3DDDI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P2020          = 11,
61     D3DDDI_COLOR_SPACE_CUSTOM                             = 0xFFFFFFFF
62 }
63 
64 enum D3DDDI_MAX_BROADCAST_CONTEXT = 64;