dmime: Avoid leaking tracks in IDirectMusicSegment_Release.
[wine.git] / include / windows.graphics.directx.idl
blob45961ec983e709ca637e7afef0ac6ba7603c27ef
1 /*
2 * Copyright (C) 2023 Mohamad Al-Jaf
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #ifdef __WIDL__
20 #pragma winrt ns_prefix
21 #endif
23 import "inspectable.idl";
24 import "asyncinfo.idl";
25 import "eventtoken.idl";
26 import "windowscontracts.idl";
27 import "windows.foundation.idl";
29 namespace Windows.Graphics.DirectX {
30 typedef enum DirectXAlphaMode DirectXAlphaMode;
31 typedef enum DirectXPixelFormat DirectXPixelFormat;
33 declare {
34 interface Windows.Foundation.Collections.IIterable<Windows.Graphics.DirectX.DirectXPixelFormat>;
35 interface Windows.Foundation.Collections.IIterator<Windows.Graphics.DirectX.DirectXPixelFormat>;
36 interface Windows.Foundation.Collections.IVectorView<Windows.Graphics.DirectX.DirectXPixelFormat>;
40 contract(Windows.Foundation.UniversalApiContract, 2.0)
42 enum DirectXAlphaMode
44 Unspecified = 0,
45 Premultiplied = 1,
46 Straight = 2,
47 Ignore = 3,
51 contract(Windows.Foundation.UniversalApiContract, 1.0)
53 enum DirectXPixelFormat
55 Unknown = 0,
56 R32G32B32A32Typeless = 1,
57 R32G32B32A32Float = 2,
58 R32G32B32A32UInt = 3,
59 R32G32B32A32Int = 4,
60 R32G32B32Typeless = 5,
61 R32G32B32Float = 6,
62 R32G32B32UInt = 7,
63 R32G32B32Int = 8,
64 R16G16B16A16Typeless = 9,
65 R16G16B16A16Float = 10,
66 R16G16B16A16UIntNormalized = 11,
67 R16G16B16A16UInt = 12,
68 R16G16B16A16IntNormalized = 13,
69 R16G16B16A16Int = 14,
70 R32G32Typeless = 15,
71 R32G32Float = 16,
72 R32G32UInt = 17,
73 R32G32Int = 18,
74 R32G8X24Typeless = 19,
75 D32FloatS8X24UInt = 20,
76 R32FloatX8X24Typeless = 21,
77 X32TypelessG8X24UInt = 22,
78 R10G10B10A2Typeless = 23,
79 R10G10B10A2UIntNormalized = 24,
80 R10G10B10A2UInt = 25,
81 R11G11B10Float = 26,
82 R8G8B8A8Typeless = 27,
83 R8G8B8A8UIntNormalized = 28,
84 R8G8B8A8UIntNormalizedSrgb = 29,
85 R8G8B8A8UInt = 30,
86 R8G8B8A8IntNormalized = 31,
87 R8G8B8A8Int = 32,
88 R16G16Typeless = 33,
89 R16G16Float = 34,
90 R16G16UIntNormalized = 35,
91 R16G16UInt = 36,
92 R16G16IntNormalized = 37,
93 R16G16Int = 38,
94 R32Typeless = 39,
95 D32Float = 40,
96 R32Float = 41,
97 R32UInt = 42,
98 R32Int = 43,
99 R24G8Typeless = 44,
100 D24UIntNormalizedS8UInt = 45,
101 R24UIntNormalizedX8Typeless = 46,
102 X24TypelessG8UInt = 47,
103 R8G8Typeless = 48,
104 R8G8UIntNormalized = 49,
105 R8G8UInt = 50,
106 R8G8IntNormalized = 51,
107 R8G8Int = 52,
108 R16Typeless = 53,
109 R16Float = 54,
110 D16UIntNormalized = 55,
111 R16UIntNormalized = 56,
112 R16UInt = 57,
113 R16IntNormalized = 58,
114 R16Int = 59,
115 R8Typeless = 60,
116 R8UIntNormalized = 61,
117 R8UInt = 62,
118 R8IntNormalized = 63,
119 R8Int = 64,
120 A8UIntNormalized = 65,
121 R1UIntNormalized = 66,
122 R9G9B9E5SharedExponent = 67,
123 R8G8B8G8UIntNormalized = 68,
124 G8R8G8B8UIntNormalized = 69,
125 BC1Typeless = 70,
126 BC1UIntNormalized = 71,
127 BC1UIntNormalizedSrgb = 72,
128 BC2Typeless = 73,
129 BC2UIntNormalized = 74,
130 BC2UIntNormalizedSrgb = 75,
131 BC3Typeless = 76,
132 BC3UIntNormalized = 77,
133 BC3UIntNormalizedSrgb = 78,
134 BC4Typeless = 79,
135 BC4UIntNormalized = 80,
136 BC4IntNormalized = 81,
137 BC5Typeless = 82,
138 BC5UIntNormalized = 83,
139 BC5IntNormalized = 84,
140 B5G6R5UIntNormalized = 85,
141 B5G5R5A1UIntNormalized = 86,
142 B8G8R8A8UIntNormalized = 87,
143 B8G8R8X8UIntNormalized = 88,
144 R10G10B10XRBiasA2UIntNormalized = 89,
145 B8G8R8A8Typeless = 90,
146 B8G8R8A8UIntNormalizedSrgb = 91,
147 B8G8R8X8Typeless = 92,
148 B8G8R8X8UIntNormalizedSrgb = 93,
149 BC6HTypeless = 94,
150 BC6H16UnsignedFloat = 95,
151 BC6H16Float = 96,
152 BC7Typeless = 97,
153 BC7UIntNormalized = 98,
154 BC7UIntNormalizedSrgb = 99,
155 Ayuv = 100,
156 Y410 = 101,
157 Y416 = 102,
158 NV12 = 103,
159 P010 = 104,
160 P016 = 105,
161 Opaque420 = 106,
162 Yuy2 = 107,
163 Y210 = 108,
164 Y216 = 109,
165 NV11 = 110,
166 AI44 = 111,
167 IA44 = 112,
168 P8 = 113,
169 A8P8 = 114,
170 B4G4R4A4UIntNormalized = 115,
171 P208 = 130,
172 V208 = 131,
173 V408 = 132,
174 [contract(Windows.Foundation.UniversalApiContract, 10.0)]
175 SamplerFeedbackMinMipOpaque = 189,
176 [contract(Windows.Foundation.UniversalApiContract, 10.0)]
177 SamplerFeedbackMipRegionUsedOpaque = 190,