Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
7ac3a734
Commit
7ac3a734
authored
Aug 05, 2021
by
Nikolay Sivov
Committed by
Alexandre Julliard
Aug 06, 2021
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
include: Add d3dx10 vector and matrix types.
Signed-off-by:
Matteo Bruni
<
mbruni@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
815ac665
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
164 additions
and
0 deletions
+164
-0
d3dx10math.h
include/d3dx10math.h
+164
-0
No files found.
include/d3dx10math.h
View file @
7ac3a734
...
@@ -24,6 +24,34 @@
...
@@ -24,6 +24,34 @@
#include <math.h>
#include <math.h>
#ifndef D3DVECTOR_DEFINED
#define D3DVECTOR_DEFINED
typedef
struct
_D3DVECTOR
{
float
x
;
float
y
;
float
z
;
}
D3DVECTOR
;
#endif
#ifndef D3DMATRIX_DEFINED
#define D3DMATRIX_DEFINED
typedef
struct
_D3DMATRIX
{
union
{
struct
{
float
_11
,
_12
,
_13
,
_14
;
float
_21
,
_22
,
_23
,
_24
;
float
_31
,
_32
,
_33
,
_34
;
float
_41
,
_42
,
_43
,
_44
;
};
float
m
[
4
][
4
];
};
}
D3DMATRIX
;
#endif
typedef
enum
_D3DX_CPU_OPTIMIZATION
typedef
enum
_D3DX_CPU_OPTIMIZATION
{
{
D3DX_NOT_OPTIMIZED
,
D3DX_NOT_OPTIMIZED
,
...
@@ -82,6 +110,142 @@ public:
...
@@ -82,6 +110,142 @@ public:
float
r
,
g
,
b
,
a
;
float
r
,
g
,
b
,
a
;
}
D3DXCOLOR
,
*
LPD3DXCOLOR
;
}
D3DXCOLOR
,
*
LPD3DXCOLOR
;
typedef
struct
D3DXVECTOR2
{
#ifdef __cplusplus
D3DXVECTOR2
()
{};
D3DXVECTOR2
(
const
float
*
pf
);
D3DXVECTOR2
(
float
fx
,
float
fy
);
operator
float
*
();
operator
const
float
*
()
const
;
D3DXVECTOR2
&
operator
+=
(
const
D3DXVECTOR2
&
);
D3DXVECTOR2
&
operator
-=
(
const
D3DXVECTOR2
&
);
D3DXVECTOR2
&
operator
*=
(
float
);
D3DXVECTOR2
&
operator
/=
(
float
);
D3DXVECTOR2
operator
+
()
const
;
D3DXVECTOR2
operator
-
()
const
;
D3DXVECTOR2
operator
+
(
const
D3DXVECTOR2
&
)
const
;
D3DXVECTOR2
operator
-
(
const
D3DXVECTOR2
&
)
const
;
D3DXVECTOR2
operator
*
(
float
)
const
;
D3DXVECTOR2
operator
/
(
float
)
const
;
friend
D3DXVECTOR2
operator
*
(
float
,
const
D3DXVECTOR2
&
);
BOOL
operator
==
(
const
D3DXVECTOR2
&
)
const
;
BOOL
operator
!=
(
const
D3DXVECTOR2
&
)
const
;
#endif
/* __cplusplus */
float
x
,
y
;
}
D3DXVECTOR2
,
*
LPD3DXVECTOR2
;
#ifdef __cplusplus
typedef
struct
D3DXVECTOR3
:
public
D3DVECTOR
{
D3DXVECTOR3
()
{};
D3DXVECTOR3
(
const
float
*
pf
);
D3DXVECTOR3
(
const
D3DVECTOR
&
v
);
D3DXVECTOR3
(
float
fx
,
float
fy
,
float
fz
);
operator
float
*
();
operator
const
float
*
()
const
;
D3DXVECTOR3
&
operator
+=
(
const
D3DXVECTOR3
&
);
D3DXVECTOR3
&
operator
-=
(
const
D3DXVECTOR3
&
);
D3DXVECTOR3
&
operator
*=
(
float
);
D3DXVECTOR3
&
operator
/=
(
float
);
D3DXVECTOR3
operator
+
()
const
;
D3DXVECTOR3
operator
-
()
const
;
D3DXVECTOR3
operator
+
(
const
D3DXVECTOR3
&
)
const
;
D3DXVECTOR3
operator
-
(
const
D3DXVECTOR3
&
)
const
;
D3DXVECTOR3
operator
*
(
float
)
const
;
D3DXVECTOR3
operator
/
(
float
)
const
;
friend
D3DXVECTOR3
operator
*
(
float
,
const
struct
D3DXVECTOR3
&
);
BOOL
operator
==
(
const
D3DXVECTOR3
&
)
const
;
BOOL
operator
!=
(
const
D3DXVECTOR3
&
)
const
;
}
D3DXVECTOR3
,
*
LPD3DXVECTOR3
;
#else
/* !__cplusplus */
typedef
struct
_D3DVECTOR
D3DXVECTOR3
,
*
LPD3DXVECTOR3
;
#endif
/* !__cplusplus */
typedef
struct
D3DXVECTOR4
{
#ifdef __cplusplus
D3DXVECTOR4
()
{};
D3DXVECTOR4
(
const
float
*
pf
);
D3DXVECTOR4
(
float
fx
,
float
fy
,
float
fz
,
float
fw
);
operator
float
*
();
operator
const
float
*
()
const
;
D3DXVECTOR4
&
operator
+=
(
const
D3DXVECTOR4
&
);
D3DXVECTOR4
&
operator
-=
(
const
D3DXVECTOR4
&
);
D3DXVECTOR4
&
operator
*=
(
float
);
D3DXVECTOR4
&
operator
/=
(
float
);
D3DXVECTOR4
operator
+
()
const
;
D3DXVECTOR4
operator
-
()
const
;
D3DXVECTOR4
operator
+
(
const
D3DXVECTOR4
&
)
const
;
D3DXVECTOR4
operator
-
(
const
D3DXVECTOR4
&
)
const
;
D3DXVECTOR4
operator
*
(
float
)
const
;
D3DXVECTOR4
operator
/
(
float
)
const
;
friend
D3DXVECTOR4
operator
*
(
float
,
const
D3DXVECTOR4
&
);
BOOL
operator
==
(
const
D3DXVECTOR4
&
)
const
;
BOOL
operator
!=
(
const
D3DXVECTOR4
&
)
const
;
#endif
/* __cplusplus */
float
x
,
y
,
z
,
w
;
}
D3DXVECTOR4
,
*
LPD3DXVECTOR4
;
#ifdef __cplusplus
typedef
struct
D3DXMATRIX
:
public
D3DMATRIX
{
D3DXMATRIX
()
{};
D3DXMATRIX
(
const
float
*
pf
);
D3DXMATRIX
(
const
D3DMATRIX
&
mat
);
D3DXMATRIX
(
float
f11
,
float
f12
,
float
f13
,
float
f14
,
float
f21
,
float
f22
,
float
f23
,
float
f24
,
float
f31
,
float
f32
,
float
f33
,
float
f34
,
float
f41
,
float
f42
,
float
f43
,
float
f44
);
float
&
operator
()
(
UINT
row
,
UINT
col
);
float
operator
()
(
UINT
row
,
UINT
col
)
const
;
operator
float
*
();
operator
const
float
*
()
const
;
D3DXMATRIX
&
operator
*=
(
const
D3DXMATRIX
&
);
D3DXMATRIX
&
operator
+=
(
const
D3DXMATRIX
&
);
D3DXMATRIX
&
operator
-=
(
const
D3DXMATRIX
&
);
D3DXMATRIX
&
operator
*=
(
float
);
D3DXMATRIX
&
operator
/=
(
float
);
D3DXMATRIX
operator
+
()
const
;
D3DXMATRIX
operator
-
()
const
;
D3DXMATRIX
operator
*
(
const
D3DXMATRIX
&
)
const
;
D3DXMATRIX
operator
+
(
const
D3DXMATRIX
&
)
const
;
D3DXMATRIX
operator
-
(
const
D3DXMATRIX
&
)
const
;
D3DXMATRIX
operator
*
(
float
)
const
;
D3DXMATRIX
operator
/
(
float
)
const
;
friend
D3DXMATRIX
operator
*
(
float
,
const
D3DXMATRIX
&
);
BOOL
operator
==
(
const
D3DXMATRIX
&
)
const
;
BOOL
operator
!=
(
const
D3DXMATRIX
&
)
const
;
}
D3DXMATRIX
,
*
LPD3DXMATRIX
;
#else
/* !__cplusplus */
typedef
struct
_D3DMATRIX
D3DXMATRIX
,
*
LPD3DXMATRIX
;
#endif
/* !__cplusplus */
#ifdef __cplusplus
#ifdef __cplusplus
extern
"C"
{
extern
"C"
{
#endif
#endif
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment