Module: wine Branch: master Commit: d400728521975e4f7c533126645e195b55f6b8a2 URL: http://source.winehq.org/git/wine.git/?a=commit;h=d400728521975e4f7c53312664...
Author: David Adam David.Adam@math.cnrs.fr Date: Sun May 20 12:26:21 2007 +0200
d3drm: Implement D3DRMColorGetBlue.
---
dlls/d3drm/d3drm.spec | 2 +- dlls/d3drm/math.c | 6 ++++++ dlls/d3drm/tests/vector.c | 8 ++++++++ include/d3drmdef.h | 1 + 4 files changed, 16 insertions(+), 1 deletions(-)
diff --git a/dlls/d3drm/d3drm.spec b/dlls/d3drm/d3drm.spec index e98aae8..b7879c4 100644 --- a/dlls/d3drm/d3drm.spec +++ b/dlls/d3drm/d3drm.spec @@ -1,5 +1,5 @@ @ stub D3DRMColorGetAlpha -@ stub D3DRMColorGetBlue +@ stdcall D3DRMColorGetBlue(long) @ stdcall D3DRMColorGetGreen(long) @ stdcall D3DRMColorGetRed(long) @ stub D3DRMCreateColorRGB diff --git a/dlls/d3drm/math.c b/dlls/d3drm/math.c index 786f6c1..7acd710 100644 --- a/dlls/d3drm/math.c +++ b/dlls/d3drm/math.c @@ -34,6 +34,12 @@
WINE_DEFAULT_DEBUG_CHANNEL(d3drm);
+/* Determine the blue part of a color */ +D3DVALUE WINAPI D3DRMColorGetBlue(D3DCOLOR color) +{ + return (RGBA_GETBLUE(color)/255.0); +} + /* Determine the green part of a color */ D3DVALUE WINAPI D3DRMColorGetGreen(D3DCOLOR color) { diff --git a/dlls/d3drm/tests/vector.c b/dlls/d3drm/tests/vector.c index a5f073e..7f18eef 100644 --- a/dlls/d3drm/tests/vector.c +++ b/dlls/d3drm/tests/vector.c @@ -79,6 +79,7 @@ static LPD3DVECTOR (WINAPI * pD3DRMVectorScale)(LPD3DVECTOR, LPD3DVECTOR, D3DVAL static LPD3DVECTOR (WINAPI * pD3DRMVectorSubtract)(LPD3DVECTOR, LPD3DVECTOR, LPD3DVECTOR); static LPD3DRMQUATERNION (WINAPI * pD3DRMQuaternionFromRotation)(LPD3DRMQUATERNION, LPD3DVECTOR, D3DVALUE); static LPD3DRMQUATERNION (WINAPI * pD3DRMQuaternionSlerp)(LPD3DRMQUATERNION, LPD3DRMQUATERNION, LPD3DRMQUATERNION, D3DVALUE); +static D3DVALUE (WINAPI * pD3DRMColorGetBlue)(D3DCOLOR); static D3DVALUE (WINAPI * pD3DRMColorGetGreen)(D3DCOLOR); static D3DVALUE (WINAPI * pD3DRMColorGetRed)(D3DCOLOR);
@@ -112,6 +113,7 @@ static BOOL InitFunctionPtrs(void) D3DRM_GET_PROC(D3DRMVectorSubtract) D3DRM_GET_PROC(D3DRMQuaternionFromRotation) D3DRM_GET_PROC(D3DRMQuaternionSlerp) + D3DRM_GET_PROC(D3DRMColorGetBlue) D3DRM_GET_PROC(D3DRMColorGetGreen) D3DRM_GET_PROC(D3DRMColorGetRed)
@@ -255,6 +257,12 @@ static void ColorTest(void) D3DCOLOR color; D3DVALUE expected, got;
+/*___________D3DRMColorGetBlue__________________________*/ + color=0xc82a1455; + expected=1.0/3.0; + got=pD3DRMColorGetBlue(color); + ok((fabs(expected-got)<admit_error),"Expected=%f, Got=%f\n",expected,got); + /*___________D3DRMColorGetGreen_________________________*/ color=0xad971203; expected=6.0/85.0; diff --git a/include/d3drmdef.h b/include/d3drmdef.h index 19fb15c..73c661f 100644 --- a/include/d3drmdef.h +++ b/include/d3drmdef.h @@ -54,6 +54,7 @@ LPD3DVECTOR WINAPI D3DRMVectorReflect(LPD3DVECTOR, LPD3DVECTOR, LPD3DVECTOR); LPD3DVECTOR WINAPI D3DRMVectorScale(LPD3DVECTOR, LPD3DVECTOR, D3DVALUE); LPD3DVECTOR WINAPI D3DRMVectorSubtract(LPD3DVECTOR, LPD3DVECTOR, LPD3DVECTOR);
+D3DVALUE WINAPI D3DRMColorGetBlue(D3DCOLOR); D3DVALUE WINAPI D3DRMColorGetGreen(D3DCOLOR); D3DVALUE WINAPI D3DRMColorGetRed(D3DCOLOR);