/* * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel * PURPOSE: Native DirectDraw implementation * FILE: win32ss/reactx/ntddraw/mocomp.c * PROGRAMER: Magnus Olsen (magnus@greatlord.com) * REVISION HISTORY: * 19/1-2006 Magnus Olsen */ #include #include /************************************************************************/ /* NtGdiDdBeginMoCompFrame */ /************************************************************************/ DWORD APIENTRY NtGdiDdBeginMoCompFrame(HANDLE hMoComp, PDD_BEGINMOCOMPFRAMEDATA puBeginFrameData) { PGD_DDBEGINMOCOMPFRAME pfnDdBeginMoCompFrame = (PGD_DDBEGINMOCOMPFRAME)gpDxFuncs[DXG_INDEX_DxDdBeginMoCompFrame].pfn; if (pfnDdBeginMoCompFrame == NULL) { DPRINT1("Warning: no pfnDdBeginMoCompFrame"); return DDHAL_DRIVER_NOTHANDLED; } DPRINT1("Calling dxg.sys DdBeginMoCompFrame"); return pfnDdBeginMoCompFrame(hMoComp,puBeginFrameData); } /************************************************************************/ /* NtGdiDdCreateMoComp */ /************************************************************************/ HANDLE APIENTRY NtGdiDdCreateMoComp(HANDLE hDirectDraw, PDD_CREATEMOCOMPDATA puCreateMoCompData) { PGD_DXDDCREATEMOCOMP pfnDdCreateMoComp = (PGD_DXDDCREATEMOCOMP)gpDxFuncs[DXG_INDEX_DxDdCreateMoComp].pfn; if (pfnDdCreateMoComp == NULL) { DPRINT1("Warning: no pfnDdCreateMoComp"); return DDHAL_DRIVER_NOTHANDLED; } DPRINT1("Calling dxg.sys DdCreateMoComp"); return pfnDdCreateMoComp(hDirectDraw, puCreateMoCompData); } /************************************************************************/ /* NtGdiDdDestroyMoComp */ /************************************************************************/ DWORD APIENTRY NtGdiDdDestroyMoComp(HANDLE hMoComp, PDD_DESTROYMOCOMPDATA puBeginFrameData) { PGD_DXDDDESTROYMOCOMP pfnDxDdDestroyMoComp = (PGD_DXDDDESTROYMOCOMP)gpDxFuncs[DXG_INDEX_DxDdDestroyMoComp].pfn; if (pfnDxDdDestroyMoComp == NULL) { DPRINT1("Warning: no pfnDxDdDestroyMoComp"); return DDHAL_DRIVER_NOTHANDLED; } DPRINT1("Calling dxg.sys DxDdDestroyMoComp"); return pfnDxDdDestroyMoComp(hMoComp, puBeginFrameData); } /************************************************************************/ /* NtGdiDdEndMoCompFrame */ /************************************************************************/ DWORD APIENTRY NtGdiDdEndMoCompFrame(HANDLE hMoComp, PDD_ENDMOCOMPFRAMEDATA puEndFrameData) { PGD_DXDDENDMOCOMPFRAME pfnDdEndMoCompFrame = (PGD_DXDDENDMOCOMPFRAME)gpDxFuncs[DXG_INDEX_DxDdEndMoCompFrame].pfn; if (pfnDdEndMoCompFrame == NULL) { DPRINT1("Warning: no pfnDdEndMoCompFrame"); return DDHAL_DRIVER_NOTHANDLED; } DPRINT1("Calling dxg.sys pfnDdEndMoCompFrame"); return pfnDdEndMoCompFrame(hMoComp, puEndFrameData); } /************************************************************************/ /* NtGdiDdGetInternalMoCompInfo */ /************************************************************************/ DWORD APIENTRY NtGdiDdGetInternalMoCompInfo(HANDLE hDirectDraw, PDD_GETINTERNALMOCOMPDATA puGetInternalData) { PGD_DXDDGETINTERNALMOCOMPINFO pfnDdGetInternalMoCompInfo = (PGD_DXDDGETINTERNALMOCOMPINFO)gpDxFuncs[DXG_INDEX_DxDdGetInternalMoCompInfo].pfn; if (pfnDdGetInternalMoCompInfo == NULL) { DPRINT1("Warning: no pfnDdGetInternalMoCompInfo"); return DDHAL_DRIVER_NOTHANDLED; } DPRINT1("Calling dxg.sys pfnDdGetInternalMoCompInfo"); return pfnDdGetInternalMoCompInfo(hDirectDraw, puGetInternalData); } /************************************************************************/ /* NtGdiDdGetMoCompBuffInfo */ /************************************************************************/ DWORD APIENTRY NtGdiDdGetMoCompBuffInfo(HANDLE hDirectDraw, PDD_GETMOCOMPCOMPBUFFDATA puGetBuffData) { PGD_DXDDGETMOCOMPBUFFINFO pfnDdGetMoCompBuffInfo = (PGD_DXDDGETMOCOMPBUFFINFO)gpDxFuncs[DXG_INDEX_DxDdGetMoCompBuffInfo].pfn; if (pfnDdGetMoCompBuffInfo == NULL) { DPRINT1("Warning: no pfnDdGetMoCompBuffInfo"); return DDHAL_DRIVER_NOTHANDLED; } DPRINT1("Calling dxg.sys pfnDdGetMoCompBuffInfo"); return pfnDdGetMoCompBuffInfo(hDirectDraw, puGetBuffData); } /************************************************************************/ /* NtGdiDdGetMoCompFormats */ /************************************************************************/ DWORD APIENTRY NtGdiDdGetMoCompFormats(HANDLE hDirectDraw, PDD_GETMOCOMPFORMATSDATA puGetMoCompFormatsData) { PGD_DXDDGETMOCOMPFORMATS pfnDdGetMoCompFormats = (PGD_DXDDGETMOCOMPFORMATS)gpDxFuncs[DXG_INDEX_DxDdGetMoCompFormats].pfn; if (pfnDdGetMoCompFormats == NULL) { DPRINT1("Warning: no pfnDdGetMoCompFormats"); return DDHAL_DRIVER_NOTHANDLED; } DPRINT1("Calling dxg.sys pfnDdGetMoCompFormats"); return pfnDdGetMoCompFormats(hDirectDraw, puGetMoCompFormatsData); } /************************************************************************/ /* NtGdiDdGetMoCompGuids */ /************************************************************************/ DWORD APIENTRY NtGdiDdGetMoCompGuids(HANDLE hDirectDraw, PDD_GETMOCOMPGUIDSDATA puGetMoCompGuidsData) { PGD_DXDDGETMOCOMPGUIDS pfnDdGetMoCompGuids = (PGD_DXDDGETMOCOMPGUIDS)gpDxFuncs[DXG_INDEX_DxDdGetMoCompGuids].pfn; if (pfnDdGetMoCompGuids == NULL) { DPRINT1("Warning: no pfnDdGetMoCompGuids"); return DDHAL_DRIVER_NOTHANDLED; } DPRINT1("Calling dxg.sys pfnDdGetMoCompGuids"); return pfnDdGetMoCompGuids(hDirectDraw, puGetMoCompGuidsData); } /************************************************************************/ /* NtGdiDdQueryMoCompStatus */ /************************************************************************/ DWORD APIENTRY NtGdiDdQueryMoCompStatus(HANDLE hMoComp, PDD_QUERYMOCOMPSTATUSDATA puQueryMoCompStatusData) { PGD_DXDDQUERYMOCOMPSTATUS pfnDdQueryMoCompStatus = (PGD_DXDDQUERYMOCOMPSTATUS)gpDxFuncs[DXG_INDEX_DxDdQueryMoCompStatus].pfn; if (pfnDdQueryMoCompStatus == NULL) { DPRINT1("Warning: no pfnDdQueryMoCompStatus"); return DDHAL_DRIVER_NOTHANDLED; } DPRINT1("Calling dxg.sys pfnDdQueryMoCompStatus"); return pfnDdQueryMoCompStatus(hMoComp, puQueryMoCompStatusData); } /************************************************************************/ /* NtGdiDdRenderMoComp */ /************************************************************************/ DWORD APIENTRY NtGdiDdRenderMoComp(HANDLE hMoComp, PDD_RENDERMOCOMPDATA puRenderMoCompData) { PGD_DXDDRENDERMOCOMP pfnDdRenderMoComp = (PGD_DXDDRENDERMOCOMP)gpDxFuncs[DXG_INDEX_DxDdRenderMoComp].pfn; if (pfnDdRenderMoComp == NULL) { DPRINT1("Warning: no pfnDdRenderMoComp"); return DDHAL_DRIVER_NOTHANDLED; } DPRINT1("Calling dxg.sys pfnDdRenderMoComp"); return pfnDdRenderMoComp(hMoComp, puRenderMoCompData); }