Matteo Bruni : include: Flesh out d3dx10math.h a bit more.

Alexandre Julliard julliard at winehq.org
Fri Jul 24 17:05:10 CDT 2020


Module: wine
Branch: master
Commit: e48fccf76c4f821958494c1601f1c090f2fdba4c
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=e48fccf76c4f821958494c1601f1c090f2fdba4c

Author: Matteo Bruni <mbruni at codeweavers.com>
Date:   Fri Jul 24 11:14:07 2020 +0200

include: Flesh out d3dx10math.h a bit more.

Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 include/d3dx10math.h | 55 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)

diff --git a/include/d3dx10math.h b/include/d3dx10math.h
index a96784b108..c8bcfd2ce4 100644
--- a/include/d3dx10math.h
+++ b/include/d3dx10math.h
@@ -32,10 +32,65 @@ typedef enum _D3DX_CPU_OPTIMIZATION
     D3DX_SSE_OPTIMIZED
 } D3DX_CPU_OPTIMIZATION;
 
+typedef struct D3DXFLOAT16
+{
+#ifdef __cplusplus
+    D3DXFLOAT16();
+    D3DXFLOAT16(float f);
+    D3DXFLOAT16(const D3DXFLOAT16 &f);
+
+    operator float();
+
+    BOOL operator==(const D3DXFLOAT16 &f) const;
+    BOOL operator!=(const D3DXFLOAT16 &f) const;
+#endif
+    WORD value;
+} D3DXFLOAT16, *LPD3DXFLOAT16;
+
+typedef struct D3DXCOLOR
+{
+#ifdef __cplusplus
+public:
+    D3DXCOLOR(){};
+    D3DXCOLOR(UINT color);
+    D3DXCOLOR(const float *color);
+    D3DXCOLOR(const D3DXFLOAT16 *color);
+    D3DXCOLOR(float r, float g, float b, float a);
+
+    operator UINT() const;
+    operator float *();
+    operator const float *() const;
+
+    D3DXCOLOR & operator+=(const D3DXCOLOR &color);
+    D3DXCOLOR & operator-=(const D3DXCOLOR &color);
+    D3DXCOLOR & operator*=(float n);
+    D3DXCOLOR & operator/=(float n);
+
+    D3DXCOLOR operator+() const;
+    D3DXCOLOR operator-() const;
+
+    D3DXCOLOR operator+(const D3DXCOLOR &color) const;
+    D3DXCOLOR operator-(const D3DXCOLOR &color) const;
+    D3DXCOLOR operator*(float n) const;
+    D3DXCOLOR operator/(float n) const;
+
+    friend D3DXCOLOR operator*(float n, const D3DXCOLOR &color);
+
+    BOOL operator==(const D3DXCOLOR &color) const;
+    BOOL operator!=(const D3DXCOLOR &color) const;
+#endif
+    float r, g, b, a;
+} D3DXCOLOR, *LPD3DXCOLOR;
+
 #ifdef __cplusplus
 extern "C" {
 #endif
 
+D3DXCOLOR *D3DXColorAdd(D3DXCOLOR *out, D3DXCOLOR c1, D3DXCOLOR c2);
+D3DXCOLOR *D3DXColorLerp(D3DXCOLOR *out, D3DXCOLOR c1, D3DXCOLOR c2, float s);
+D3DXCOLOR *D3DXColorModulate(D3DXCOLOR *out, D3DXCOLOR c1, D3DXCOLOR c2);
+D3DXCOLOR *D3DXColorScale(D3DXCOLOR *out, D3DXCOLOR c, float s);
+D3DXCOLOR *D3DXColorSubtract(D3DXCOLOR *out, D3DXCOLOR c1, D3DXCOLOR c2);
 D3DX_CPU_OPTIMIZATION WINAPI D3DXCpuOptimizations(BOOL enable);
 
 #ifdef __cplusplus




More information about the wine-cvs mailing list