Author: greatlrd
Date: Sat Oct 20 22:58:13 2007
New Revision: 29721
URL:
http://svn.reactos.org/svn/reactos?rev=29721&view=rev
Log:
update some docs with info that is correct, this info can not be found in msdn, msdn is
wrong in this part.
that why people can not check see if they can create a surface.
Modified:
branches/reactx/reactos/subsystems/win32/win32k/ntddraw/d3d.c
Modified: branches/reactx/reactos/subsystems/win32/win32k/ntddraw/d3d.c
URL:
http://svn.reactos.org/svn/reactos/branches/reactx/reactos/subsystems/win32…
==============================================================================
--- branches/reactx/reactos/subsystems/win32/win32k/ntddraw/d3d.c (original)
+++ branches/reactx/reactos/subsystems/win32/win32k/ntddraw/d3d.c Sat Oct 20 22:58:13
2007
@@ -46,6 +46,8 @@
*
* Before call to this api please set the puCanCreateSurfaceData->ddRVal to a error
value example DDERR_NOTUSPORTED.
* for the ddRVal will other wise be unchange if some error happen inside the driver.
+* puCanCreateSurfaceData->lpDD is pointer to DDRAWI_DIRECTDRAW_GBL, MSDN say it is
PDD_DIRECTDRAW_GLOBAL it is not.
+* puCanCreateSurfaceData->lpDD->hDD need also be fill in with the handle we got
from NtGdiDdCreateDirectDrawObject
*
*--*/
@@ -54,7 +56,7 @@
NtGdiDdCanCreateD3DBuffer(HANDLE hDirectDraw,
PDD_CANCREATESURFACEDATA puCanCreateSurfaceData)
{
- PGD_DXDDDESTROYD3DBUFFER pfnDdCanCreateD3DBuffer =
gpDxFuncs[DXG_INDEX_DxDdCanCreateD3DBuffer].pfn;
+ PGD_DDCANCREATED3DBUFFER pfnDdCanCreateD3DBuffer =
(PGD_DDCANCREATED3DBUFFER)gpDxFuncs[DXG_INDEX_DxDdCanCreateD3DBuffer].pfn;
if (pfnDdCanCreateD3DBuffer == NULL)
{
@@ -92,12 +94,13 @@
*
*
* @remarks.
-* dxg.sys NtGdiD3dContextCreate and NtGdiD3dContextCreate call are redirect to
+* dxg.sys NtGdiD3dContextCreate call are redirect to
* same functions in the dxg.sys. So they are working exacly same. everthing else is lying
if they
* are diffent.
*
* Before call to this api please set the hSurfZ->ddRVal to a error value example
DDERR_NOTUSPORTED.
* for the ddRVal will other wise be unchange if some error happen inside the driver.
+* hSurfZ->dwhContext need also be fill in with the handle we got from
NtGdiDdCreateDirectDrawObject
*
*--*/
BOOL
@@ -107,7 +110,7 @@
HANDLE hSurfZ,
D3DNTHAL_CONTEXTCREATEDATA* pdcci)
{
- PGD_DDCANCREATED3DBUFFER pfnD3dContextCreate =
gpDxFuncs[DXG_INDEX_DxD3dContextCreate].pfn;
+ PGD_D3DCONTEXTCREATE pfnD3dContextCreate =
(PGD_D3DCONTEXTCREATE)gpDxFuncs[DXG_INDEX_DxD3dContextCreate].pfn;
if (pfnD3dContextCreate == NULL)
{
@@ -119,17 +122,30 @@
return pfnD3dContextCreate(hDirectDrawLocal, hSurfColor, hSurfZ, pdcci);
}
-/************************************************************************/
-/* NtGdiD3dContextDestroy */
-/************************************************************************/
+/*++
+* @name NtGdiD3dContextDestroy
+* @implemented
+*
+* The Function NtGdiD3dContextDestroy Destory the context data we got from
NtGdiD3dContextCreate
+*
+* @param LPD3DNTHAL_CONTEXTDESTROYDATA pContextDestroyData
+* The context data we want to destory
+*
+* @remarks.
+* dxg.sys NtGdiD3dContextDestroy call are redirect to
+* same functions in the dxg.sys. So they are working exacly same. everthing else is lying
if they
+* are diffent.
+*
+* Before call to this api please set the pContextDestroyData->ddRVal to a error value
example DDERR_NOTUSPORTED.
+* for the ddRVal will other wise be unchange if some error happen inside the driver.
+* pContextDestroyData->dwhContext need also be fill in with the handle we got from
NtGdiDdCreateDirectDrawObject
+*
+*--*/
DWORD
STDCALL
NtGdiD3dContextDestroy(LPD3DNTHAL_CONTEXTDESTROYDATA pContextDestroyData)
{
- PGD_D3DCONTEXTDESTROY pfnD3dContextDestroy = NULL;
- INT i;
-
- DXG_GET_INDEX_FUNCTION(DXG_INDEX_DxD3dContextDestroy, pfnD3dContextDestroy);
+ PGD_D3DCONTEXTDESTROY pfnD3dContextDestroy =
(PGD_D3DCONTEXTDESTROY)gpDxFuncs[DXG_INDEX_DxD3dContextDestroy].pfn;
if ( pfnD3dContextDestroy == NULL)
{