Author: greatlrd
Date: Sat Mar 15 19:16:42 2008
New Revision: 32696
URL:
http://svn.reactos.org/svn/reactos?rev=3D32696&view=3Drev
Log:
update the docs for NtGdiD3dContextCreate
some points I did not make clear how it works. =
Modified:
trunk/reactos/subsystems/win32/win32k/ntddraw/d3d.c
Modified: trunk/reactos/subsystems/win32/win32k/ntddraw/d3d.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win3=
2k/ntddraw/d3d.c?rev=3D32696&r1=3D32695&r2=3D32696&view=3Ddiff
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/reactos/subsystems/win32/win32k/ntddraw/d3d.c (original)
+++ trunk/reactos/subsystems/win32/win32k/ntddraw/d3d.c Sat Mar 15 19:16:42=
2008
@@ -89,29 +89,35 @@
* @param HANDLE hSurfZ
* Handle to a DD_SURFACE_LOCAL. It is the Z deep buffer. According MSDN if=
it is set to NULL nothing should happen.
*
-* @param D3DNTHAL_CONTEXTCREATEDATA* hSurfZ
+* @param LPD3DNTHAL_CONTEXTCREATEDATA pdcci
* The buffer to create the context data
*
* @return =
* DDHAL_DRIVER_HANDLED or DDHAL_DRIVER_NOTHANDLED if the driver supports t=
his function.
* A full check is done by checking if the return value is DDHAL_DRIVER_HAN=
DLED =
-* and puCanCreateSurfaceData->ddRVal is set to DD_OK.
+* and pdcci->ddRVal is set to DD_OK.
*
*
* @remarks.
* dxg.sys NtGdiD3dContextCreate calls are redirected to the same function =
in the dxg.sys. As such they all work the same way.
*
-* Before calling this function please set the hSurfZ->ddRVal to an error v=
alue such as DDERR_NOTUSPORTED,
+* Before calling this function please set the pdcci->ddRVal to an error va=
lue such as DDERR_NOTSUPORTED,
* for the ddRVal will otherwise be unchanged even if an error occurs insid=
e the driver. =
-* hSurfZ->dwhContext also needs to be filled in with the handle we got fro=
m NtGdiDdCreateDirectDrawObject
-*
+*
+* pdcci->lpDDLcl is a pointer to DDRAWI_DIRECTDRAW_LCL, not DD_DIRECTDRAW_=
LOCAL as MSDN claims.
+* pdcci->lpDDSLcl is a pointer to DDRAWI_DDRAWSURFACE_LCL, not DD_DDDRAWSU=
RFACE_LOCAL as MSDN claims.
+* pdcci->lpDDSZLcl is a pointer to DDRAWI_DDRAWSURFACE_LCL, not DD_DDRAWSU=
RFACE_LOCAL as MSDN claims.
+* pdcci->dwhContext also needs be filled in with the handle we receive fro=
m NtGdiDdCreateDirectDrawObject.
+* pdcci->dwPID the processid it belong to, that you need to fill in.
+* Do not forget LPD3DNTHAL_CONTEXTCREATEDATA is typecast of LPD3DHAL_CONTE=
XTCREATEDATA and thuse two struct are different size,
+* the correct struct is LPD3DHAL_CONTEXTCREATEDATA.
*--*/
BOOL =
STDCALL
NtGdiD3dContextCreate(HANDLE hDirectDrawLocal,
HANDLE hSurfColor,
HANDLE hSurfZ,
- D3DNTHAL_CONTEXTCREATEDATA* pdcci)
+ LPD3DNTHAL_CONTEXTCREATEDATA pdcci)
{
PGD_D3DCONTEXTCREATE pfnD3dContextCreate =3D (PGD_D3DCONTEXTCREATE)gpD=
xFuncs[DXG_INDEX_DxD3dContextCreate].pfn;
=