2 * Copyright 2021 Ziqing Hui 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 cpp_quote
("DEFINE_GUID(CLSID_D2D12DAffineTransform, 0x6aa97485,0x6354,0x4cfc,0x90,0x8c,0xe4,0xa7,0x4f,0x62,0xc9,0x6c);")
20 cpp_quote
("DEFINE_GUID(CLSID_D2D13DPerspectiveTransform, 0xc2844d0b,0x3d86,0x46e7,0x85,0xba,0x52,0x6c,0x92,0x40,0xf3,0xfb);")
21 cpp_quote
("DEFINE_GUID(CLSID_D2D1Composite, 0x48fc9f51,0xf6ac,0x48f1,0x8b,0x58,0x3b,0x28,0xac,0x46,0xf7,0x6d);")
22 cpp_quote
("DEFINE_GUID(CLSID_D2D1Crop, 0xe23f7110,0x0e9a,0x4324,0xaf,0x47,0x6a,0x2c,0x0c,0x46,0xf3,0x5b);")
23 cpp_quote
("DEFINE_GUID(CLSID_D2D1Shadow, 0xc67ea361,0x1863,0x4e69,0x89,0xdb,0x69,0x5d,0x3e,0x9a,0x5b,0x6b);")
25 typedef enum D2D1_BORDER_MODE
27 D2D1_BORDER_MODE_SOFT
= 0x0,
28 D2D1_BORDER_MODE_HARD
= 0x1,
29 D2D1_BORDER_MODE_FORCE_DWORD
= 0xffffffff
32 typedef enum D2D1_2DAFFINETRANSFORM_PROP
34 D2D1_2DAFFINETRANSFORM_PROP_INTERPOLATION_MODE
= 0x0,
35 D2D1_2DAFFINETRANSFORM_PROP_BORDER_MODE
= 0x1,
36 D2D1_2DAFFINETRANSFORM_PROP_TRANSFORM_MATRIX
= 0x2,
37 D2D1_2DAFFINETRANSFORM_PROP_SHARPNESS
= 0x3,
38 D2D1_2DAFFINETRANSFORM_PROP_FORCE_DWORD
= 0xffffffff
39 } D2D1_2DAFFINETRANSFORM_PROP
;
41 typedef enum D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE
43 D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_NEAREST_NEIGHBOR
= 0x0,
44 D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_LINEAR
= 0x1,
45 D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_CUBIC
= 0x2,
46 D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR
= 0x3,
47 D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_ANISOTROPIC
= 0x4,
48 D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC
= 0x5,
49 D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_FORCE_DWORD
= 0xffffffff
50 } D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE
;
52 typedef enum D2D1_3DPERSPECTIVETRANSFORM_PROP
54 D2D1_3DPERSPECTIVETRANSFORM_PROP_INTERPOLATION_MODE
= 0x0,
55 D2D1_3DPERSPECTIVETRANSFORM_PROP_BORDER_MODE
= 0x1,
56 D2D1_3DPERSPECTIVETRANSFORM_PROP_DEPTH
= 0x2,
57 D2D1_3DPERSPECTIVETRANSFORM_PROP_PERSPECTIVE_ORIGIN
= 0x3,
58 D2D1_3DPERSPECTIVETRANSFORM_PROP_LOCAL_OFFSET
= 0x4,
59 D2D1_3DPERSPECTIVETRANSFORM_PROP_GLOBAL_OFFSET
= 0x5,
60 D2D1_3DPERSPECTIVETRANSFORM_PROP_ROTATION_ORIGIN
= 0x6,
61 D2D1_3DPERSPECTIVETRANSFORM_PROP_ROTATION
= 0x7,
62 D2D1_3DPERSPECTIVETRANSFORM_PROP_FORCE_DWORD
= 0xffffffff
63 } D2D1_3DPERSPECTIVETRANSFORM_PROP
;
65 typedef enum D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE
67 D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_NEAREST_NEIGHBOR
= 0x0,
68 D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_LINEAR
= 0x1,
69 D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_CUBIC
= 0x2,
70 D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR
= 0x3,
71 D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_ANISOTROPIC
= 0x4,
72 D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_FORCE_DWORD
= 0xffffffff
73 } D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE
;
75 typedef enum D2D1_COMPOSITE_PROP
77 D2D1_COMPOSITE_PROP_MODE
= 0x0,
78 D2D1_COMPOSITE_PROP_FORCE_DWORD
= 0xffffffff
79 } D2D1_COMPOSITE_PROP
;
81 typedef enum D2D1_CROP_PROP
83 D2D1_CROP_PROP_RECT
= 0x0,
84 D2D1_CROP_PROP_BORDER_MODE
= 0x1,
85 D2D1_CROP_PROP_FORCE_DWORD
= 0xffffffff