2 * Copyright 2023 Zhiyi Zhang for CodeWeavers
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 import
"dxgitype.idl";
22 enum DCOMPOSITION_BITMAP_INTERPOLATION_MODE
24 DCOMPOSITION_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR
= 0,
25 DCOMPOSITION_BITMAP_INTERPOLATION_MODE_LINEAR
= 1,
26 DCOMPOSITION_BITMAP_INTERPOLATION_MODE_INHERIT
= 0xffffffff
29 enum DCOMPOSITION_BORDER_MODE
31 DCOMPOSITION_BORDER_MODE_SOFT
= 0,
32 DCOMPOSITION_BORDER_MODE_HARD
= 1,
33 DCOMPOSITION_BORDER_MODE_INHERIT
= 0xffffffff
36 enum DCOMPOSITION_COMPOSITE_MODE
38 DCOMPOSITION_COMPOSITE_MODE_SOURCE_OVER
= 0,
39 DCOMPOSITION_COMPOSITE_MODE_DESTINATION_INVERT
= 1,
40 DCOMPOSITION_COMPOSITE_MODE_MIN_BLEND
= 2,
41 DCOMPOSITION_COMPOSITE_MODE_INHERIT
= 0xffffffff
44 enum DCOMPOSITION_BACKFACE_VISIBILITY
46 DCOMPOSITION_BACKFACE_VISIBILITY_VISIBLE
= 0,
47 DCOMPOSITION_BACKFACE_VISIBILITY_HIDDEN
= 1,
48 DCOMPOSITION_BACKFACE_VISIBILITY_INHERIT
= 0xffffffff
51 enum DCOMPOSITION_OPACITY_MODE
53 DCOMPOSITION_OPACITY_MODE_LAYER
= 0,
54 DCOMPOSITION_OPACITY_MODE_MULTIPLY
= 1,
55 DCOMPOSITION_OPACITY_MODE_INHERIT
= 0xffffffff
58 enum DCOMPOSITION_DEPTH_MODE
60 DCOMPOSITION_DEPTH_MODE_TREE
= 0,
61 DCOMPOSITION_DEPTH_MODE_SPATIAL
= 1,
62 DCOMPOSITION_DEPTH_MODE_SORTED
= 3,
63 DCOMPOSITION_DEPTH_MODE_INHERIT
= 0xffffffff
68 LARGE_INTEGER lastFrameTime
;
69 DXGI_RATIONAL currentCompositionRate
;
70 LARGE_INTEGER currentTime
;
71 LARGE_INTEGER timeFrequency
;
72 LARGE_INTEGER nextEstimatedFrameTime
;
73 } DCOMPOSITION_FRAME_STATISTICS
;
75 cpp_quote
("#define COMPOSITIONOBJECT_READ 0x0001L")
76 cpp_quote
("#define COMPOSITIONOBJECT_WRITE 0x0002L")
77 cpp_quote
("#define COMPOSITIONOBJECT_ALL_ACCESS (COMPOSITIONOBJECT_READ | COMPOSITIONOBJECT_WRITE)")