mirror of
https://github.com/reactos/reactos.git
synced 2025-08-01 18:53:05 +00:00
finish redirect dvp interface to dxg.sys
svn path=/branches/reactx/; revision=29593
This commit is contained in:
parent
86b7527ce5
commit
d290c5e6c2
2 changed files with 56 additions and 5 deletions
|
@ -40,6 +40,12 @@ typedef DWORD (NTAPI *PGD_D3DCONTEXTDESTROY)(LPD3DNTHAL_CONTEXTDESTROYDATA);
|
|||
typedef DWORD (NTAPI *PGD_D3DCONTEXTDESTROYALL)(LPD3DNTHAL_CONTEXTDESTROYALLDATA);
|
||||
|
||||
/* From dvp.c */
|
||||
typedef DWORD (NTAPI* PGD_DVPCANCREATEVIDEOPORT)(HANDLE, PDD_CANCREATEVPORTDATA);
|
||||
typedef DWORD (NTAPI* PGD_DVPCOLORCONTROL)(HANDLE, PDD_VPORTCOLORDATA);
|
||||
typedef DWORD (NTAPI* PGD_DVPCREATEVIDEOPORT(HANDLE, PDD_CREATEVPORTDATA);
|
||||
typedef DWORD (NTAPI* PGD_DVPDESTROYVIDEOPORT(HANDLE, PDD_DESTROYVPORTDATA);
|
||||
typedef DWORD (NTAPI* PGD_DVPFLIPVIDEOPORT)(HANDLE,HANDLE,HANDLE,PDD_FLIPVPORTDATA);
|
||||
typedef DWORD (NTAPI* PGD_DVPGETVIDEOPORTBANDWITH)(HANDLE, PDD_GETVPORTBANDWIDTHDATA);
|
||||
typedef DWORD (NTAPI *PGD_DXDVPGETVIDEOPORTFLIPSTATUS)(hDirectDraw, puGetVPortFlipStatusData);
|
||||
typedef DWORD (NTAPI *PGD_DXDVPGETVIDEOPORTINPUTFORMATS)(HANDLE, PDD_GETVPORTINPUTFORMATDATA);
|
||||
typedef DWORD (NTAPI *PGD_DXDVPGETVIDEOPORTLINE)(HANDLE, PDD_GETVPORTLINEDATA);
|
||||
|
|
|
@ -13,18 +13,27 @@
|
|||
#include <w32k.h>
|
||||
#include <debug.h>
|
||||
|
||||
DWORD (NTAPI* PGD_DVPFLIPVIDEOPORT)(HANDLE,HANDLE,HANDLE,PDD_FLIPVPORTDATA);
|
||||
DWORD (NTAPI* PGD_DVPGETVIDEOPORTBANDWITH)(HANDLE, PDD_GETVPORTBANDWIDTHDATA);
|
||||
|
||||
/************************************************************************/
|
||||
/* NtGdiDvpCanCreateVideoPort */
|
||||
/************************************************************************/
|
||||
DWORD
|
||||
STDCALL
|
||||
NtGdiDvpCanCreateVideoPort(hDirectDraw,
|
||||
NtGdiDvpCanCreateVideoPort(HANDLE hDirectDraw,
|
||||
PDD_CANCREATEVPORTDATA puCanCreateVPortData)
|
||||
{
|
||||
PGD_DVPCANCREATEVIDEOPORT pfnDvpCanCreateVideoPort = NULL;
|
||||
INT i;
|
||||
|
||||
DXG_GET_INDEX_FUNCTION(DXG_INDEX_DxDvpCanCreateVideoPort, pfnDvpCanCreateVideoPort);
|
||||
|
||||
if (pfnDvpCanCreateVideoPort == NULL)
|
||||
{
|
||||
DPRINT1("Warring no pfnDvpCanCreateVideoPort");
|
||||
return DDHAL_DRIVER_NOTHANDLED;
|
||||
}
|
||||
|
||||
DPRINT1("Calling on dxg.sys pfnDvpCanCreateVideoPort");
|
||||
return pfnDvpCanCreateVideoPort(hDirectDraw, puCanCreateVPortData);
|
||||
}
|
||||
|
||||
/************************************************************************/
|
||||
|
@ -35,7 +44,19 @@ STDCALL
|
|||
NtGdiDvpColorControl(HANDLE hVideoPort,
|
||||
PDD_VPORTCOLORDATA puVPortColorData)
|
||||
{
|
||||
PGD_DVPCOLORCONTROL pfnDvpColorControl = NULL;
|
||||
INT i;
|
||||
|
||||
DXG_GET_INDEX_FUNCTION(DXG_INDEX_DxDvpColorControl, pfnDvpColorControl);
|
||||
|
||||
if (pfnDvpColorControl == NULL)
|
||||
{
|
||||
DPRINT1("Warring no pfnDvpColorControl");
|
||||
return DDHAL_DRIVER_NOTHANDLED;
|
||||
}
|
||||
|
||||
DPRINT1("Calling on dxg.sys pfnDvpColorControl");
|
||||
return pfnDvpColorControl(hVideoPort, puVPortColorData);
|
||||
}
|
||||
|
||||
/************************************************************************/
|
||||
|
@ -46,7 +67,19 @@ STDCALL
|
|||
NtGdiDvpCreateVideoPort(HANDLE hDirectDraw,
|
||||
PDD_CREATEVPORTDATA puCreateVPortData)
|
||||
{
|
||||
PGD_DVPCREATEVIDEOPORT pfnDvpCreateVideoPort = NULL;
|
||||
INT i;
|
||||
|
||||
DXG_GET_INDEX_FUNCTION(DXG_INDEX_DxDvpCreateVideoPort, pfnDvpCreateVideoPort);
|
||||
|
||||
if (pfnDvpCreateVideoPort == NULL)
|
||||
{
|
||||
DPRINT1("Warring no pfnDvpCreateVideoPort");
|
||||
return DDHAL_DRIVER_NOTHANDLED;
|
||||
}
|
||||
|
||||
DPRINT1("Calling on dxg.sys pfnDvpCreateVideoPort");
|
||||
return pfnDvpCreateVideoPort(hDirectDraw, puCreateVPortData);
|
||||
}
|
||||
|
||||
/************************************************************************/
|
||||
|
@ -57,7 +90,19 @@ STDCALL
|
|||
NtGdiDvpDestroyVideoPort(HANDLE hVideoPort,
|
||||
PDD_DESTROYVPORTDATA puDestroyVPortData)
|
||||
{
|
||||
PGD_DVPDESTROYVIDEOPORT pfnDvpDestroyVideoPort = NULL;
|
||||
INT i;
|
||||
|
||||
DXG_GET_INDEX_FUNCTION(DXG_INDEX_DxDvpDestroyVideoPort, pfnDvpDestroyVideoPort);
|
||||
|
||||
if (pfnDvpDestroyVideoPort == NULL)
|
||||
{
|
||||
DPRINT1("Warring no pfnDvpDestroyVideoPort");
|
||||
return DDHAL_DRIVER_NOTHANDLED;
|
||||
}
|
||||
|
||||
DPRINT1("Calling on dxg.sys pfnDvpDestroyVideoPort");
|
||||
return pfnDvpDestroyVideoPort(hVideoPort, puDestroyVPortData);
|
||||
}
|
||||
|
||||
/************************************************************************/
|
||||
|
@ -70,7 +115,7 @@ NtGdiDvpFlipVideoPort(HANDLE hVideoPort,
|
|||
HANDLE hDDSurfaceTarget,
|
||||
PDD_FLIPVPORTDATA puFlipVPortData)
|
||||
{
|
||||
PGD_DVPFLIPVIDEOPORT pfnDvpFlipVideoPort= NULL;
|
||||
PGD_DVPFLIPVIDEOPORT pfnDvpFlipVideoPort = NULL;
|
||||
INT i;
|
||||
|
||||
DXG_GET_INDEX_FUNCTION(DXG_INDEX_DxDvpFlipVideoPort, pfnDvpFlipVideoPort);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue