msdasql: IColumnsRowset::GetAvailableColumns return 3 meta columns to allow updating...
[wine.git] / include / windows.foundation.numerics.idl
blobf74eb4fd88942fd5732d3a134e8de5f6f8c3178f
1 /*
2 * Copyright 2022 RĂ©mi Bernon 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 #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.Foundation.Numerics {
30 typedef struct Matrix3x2 Matrix3x2;
31 typedef struct Matrix4x4 Matrix4x4;
32 typedef struct Plane Plane;
33 typedef struct Quaternion Quaternion;
34 typedef struct Vector2 Vector2;
35 typedef struct Vector3 Vector3;
36 typedef struct Vector4 Vector4;
38 declare {
39 interface Windows.Foundation.IReference<Windows.Foundation.Numerics.Matrix4x4>;
40 interface Windows.Foundation.IReference<Windows.Foundation.Numerics.Vector2>;
41 interface Windows.Foundation.IReference<Windows.Foundation.Numerics.Vector3>;
44 [contract(Windows.Foundation.UniversalApiContract, 1.0)]
45 struct Matrix3x2
47 FLOAT M11;
48 FLOAT M12;
49 FLOAT M21;
50 FLOAT M22;
51 FLOAT M31;
52 FLOAT M32;
55 [contract(Windows.Foundation.UniversalApiContract, 1.0)]
56 struct Matrix4x4
58 FLOAT M11;
59 FLOAT M12;
60 FLOAT M13;
61 FLOAT M14;
62 FLOAT M21;
63 FLOAT M22;
64 FLOAT M23;
65 FLOAT M24;
66 FLOAT M31;
67 FLOAT M32;
68 FLOAT M33;
69 FLOAT M34;
70 FLOAT M41;
71 FLOAT M42;
72 FLOAT M43;
73 FLOAT M44;
76 [contract(Windows.Foundation.UniversalApiContract, 1.0)]
77 struct Vector3
79 FLOAT X;
80 FLOAT Y;
81 FLOAT Z;
84 [contract(Windows.Foundation.UniversalApiContract, 1.0)]
85 struct Plane
87 Windows.Foundation.Numerics.Vector3 Normal;
88 FLOAT D;
91 [contract(Windows.Foundation.UniversalApiContract, 1.0)]
92 struct Quaternion
94 FLOAT X;
95 FLOAT Y;
96 FLOAT Z;
97 FLOAT W;
100 [contract(Windows.Foundation.UniversalApiContract, 1.0)]
101 struct Vector2
103 FLOAT X;
104 FLOAT Y;
107 [contract(Windows.Foundation.UniversalApiContract, 1.0)]
108 struct Vector4
110 FLOAT X;
111 FLOAT Y;
112 FLOAT Z;
113 FLOAT W;