File: dxgi1_5.idl

package info (click to toggle)
wine 4.0-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 209,096 kB
  • sloc: ansic: 2,906,412; perl: 18,817; yacc: 15,629; makefile: 9,134; objc: 6,543; lex: 4,315; python: 1,786; cpp: 1,042; sh: 771; java: 742; xml: 557; awk: 69; cs: 17
file content (127 lines) | stat: -rw-r--r-- 3,244 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
/*
 * Copyright 2017 Ihsan Akmal
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
 */

import "dxgi1_4.idl";

typedef enum DXGI_OUTDUPL_FLAG
{
    DXGI_OUTDUPL_COMPOSITED_UI_CAPTURE_ONLY = 0x1,
} DXGI_OUTDUPL_FLAG;

typedef enum DXGI_HDR_METADATA_TYPE
{
    DXGI_HDR_METADATA_TYPE_NONE = 0x0,
    DXGI_HDR_METADATA_TYPE_HDR10 = 0x1,
} DXGI_HDR_METADATA_TYPE;

typedef enum _DXGI_OFFER_RESOURCE_FLAGS
{
    DXGI_OFFER_RESOURCE_FLAG_ALLOW_DECOMMIT = 0x1,
} DXGI_OFFER_RESOURCE_FLAGS;

typedef enum _DXGI_RECLAIM_RESOURCE_RESULTS
{
    DXGI_RECLAIM_RESOURCE_RESULT_OK = 0x0,
    DXGI_RECLAIM_RESOURCE_RESULT_DISCARDED = 0x1,
    DXGI_RECLAIM_RESOURCE_RESULT_NOT_COMMITTED = 0x2,
} DXGI_RECLAIM_RESOURCE_RESULTS;

typedef enum DXGI_FEATURE
{
       DXGI_FEATURE_PRESENT_ALLOW_TEARING = 0x0,
} DXGI_FEATURE;

typedef struct DXGI_HDR_METADATA_HDR10
{
    UINT16 RedPrimary[2];
    UINT16 GreenPrimary[2];
    UINT16 BluePrimary[2];
    UINT16 WhitePoint[2];
    UINT MaxMasteringLuminance;
    UINT MinMasteringLuminance;
    UINT16 MaxContentLightLevel;
    UINT16 MaxFrameAverageLightLevel;
} DXGI_HDR_METADATA_HDR10;

[
    object,
    uuid(80a07424-ab52-42eb-833c-0c42fd282d98),
    local,
    pointer_default(unique)
]
interface IDXGIOutput5 : IDXGIOutput4
{
    HRESULT DuplicateOutput1(
        [in] IUnknown *device,
        [in] UINT flags,
        [in] UINT format_count,
        [in] const DXGI_FORMAT *formats,
        [out] IDXGIOutputDuplication **duplication
    );
}

[
    object,
    uuid(3d585d5a-bd4a-489e-b1f4-3dbcb6452ffb),
    local,
    pointer_default(unique)
]
interface IDXGISwapChain4 : IDXGISwapChain3
{
    HRESULT SetHDRMetaData(
        [in] DXGI_HDR_METADATA_TYPE type,
        [in] UINT size,
        [in] void *metadata
    );
}

[
    object,
    uuid(95b4f95f-d8da-4ca4-9ee6-3b76d5968a10),
    local,
    pointer_default(unique)
]
interface IDXGIDevice4 : IDXGIDevice3
{
    HRESULT OfferResources1(
        [in] UINT resource_count,
        [in] IDXGIResource *const *resources,
        [in] DXGI_OFFER_RESOURCE_PRIORITY priority,
        [in] UINT flags
    );
    HRESULT ReclaimResources1(
        [in] UINT resource_count,
        [in] IDXGIResource *const *resources,
        [out] DXGI_RECLAIM_RESOURCE_RESULTS *results
    );
}

[
    object,
    uuid(7632e1f5-ee65-4dca-87fd-84cd75f8838d),
    local,
    pointer_default(unique)
]
interface IDXGIFactory5 : IDXGIFactory4
{
    HRESULT CheckFeatureSupport(
        DXGI_FEATURE feature,
        [in, out] void *support_data,
        UINT support_data_size
    );
}