VirtualBox

Ignore:
Timestamp:
May 22, 2010 7:08:08 PM (15 years ago)
Author:
vboxsync
Message:

wddm: more fix to getcaps & create device

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/WINNT/Graphics/Display/wddm/VBoxDispD3D.cpp

    r29746 r29752  
    534534            Assert(pData->DataSize >= sizeof (D3DHAL_GLOBALDRIVERDATA));
    535535            if (pData->DataSize >= sizeof (D3DHAL_GLOBALDRIVERDATA))
    536                 memset (pData->pData, 0, sizeof (D3DHAL_GLOBALDRIVERDATA));
     536            {
     537                D3DHAL_GLOBALDRIVERDATA *pCaps = (D3DHAL_GLOBALDRIVERDATA *)pData->pData;
     538                memset (pCaps, 0, sizeof (D3DHAL_GLOBALDRIVERDATA));
     539                pCaps->dwSize = sizeof (D3DHAL_GLOBALDRIVERDATA);
     540                pCaps->hwCaps.dwSize = sizeof (D3DDEVICEDESC_V1);
     541                pCaps->hwCaps.dwFlags = D3DDD_COLORMODEL
     542                        | D3DDD_DEVCAPS;
     543
     544                pCaps->hwCaps.dcmColorModel = D3DCOLOR_RGB;
     545                pCaps->hwCaps.dwDevCaps = 0;
     546                pCaps->hwCaps.dtcTransformCaps.dwSize = sizeof (D3DTRANSFORMCAPS);
     547                pCaps->hwCaps.dtcTransformCaps.dwCaps = 0;
     548                pCaps->hwCaps.bClipping = FALSE;
     549                pCaps->hwCaps.dlcLightingCaps.dwSize = sizeof (D3DLIGHTINGCAPS);
     550                pCaps->hwCaps.dlcLightingCaps.dwCaps = 0;
     551                pCaps->hwCaps.dlcLightingCaps.dwLightingModel = 0;
     552                pCaps->hwCaps.dlcLightingCaps.dwNumLights = 0;
     553                pCaps->hwCaps.dpcLineCaps.dwSize = sizeof (D3DPRIMCAPS);
     554                pCaps->hwCaps.dpcLineCaps.dwMiscCaps = 0;
     555                pCaps->hwCaps.dpcLineCaps.dwRasterCaps = 0;
     556                pCaps->hwCaps.dpcLineCaps.dwZCmpCaps = 0;
     557                pCaps->hwCaps.dpcLineCaps.dwSrcBlendCaps = 0;
     558                pCaps->hwCaps.dpcLineCaps.dwDestBlendCaps = 0;
     559                pCaps->hwCaps.dpcLineCaps.dwAlphaCmpCaps = 0;
     560                pCaps->hwCaps.dpcLineCaps.dwShadeCaps = 0;
     561                pCaps->hwCaps.dpcLineCaps.dwTextureCaps = 0;
     562                pCaps->hwCaps.dpcLineCaps.dwTextureFilterCaps = 0;
     563                pCaps->hwCaps.dpcLineCaps.dwTextureBlendCaps = 0;
     564                pCaps->hwCaps.dpcLineCaps.dwTextureAddressCaps = 0;
     565                pCaps->hwCaps.dpcLineCaps.dwStippleWidth = 0;
     566                pCaps->hwCaps.dpcLineCaps.dwStippleHeight = 0;
     567
     568                pCaps->hwCaps.dpcTriCaps.dwSize = sizeof (D3DPRIMCAPS);
     569                pCaps->hwCaps.dpcTriCaps.dwMiscCaps = 0;
     570                pCaps->hwCaps.dpcTriCaps.dwRasterCaps = 0;
     571                pCaps->hwCaps.dpcTriCaps.dwZCmpCaps = 0;
     572                pCaps->hwCaps.dpcTriCaps.dwSrcBlendCaps = 0;
     573                pCaps->hwCaps.dpcTriCaps.dwDestBlendCaps = 0;
     574                pCaps->hwCaps.dpcTriCaps.dwAlphaCmpCaps = 0;
     575                pCaps->hwCaps.dpcTriCaps.dwShadeCaps = 0;
     576                pCaps->hwCaps.dpcTriCaps.dwTextureCaps = 0;
     577                pCaps->hwCaps.dpcTriCaps.dwTextureFilterCaps = 0;
     578                pCaps->hwCaps.dpcTriCaps.dwTextureBlendCaps = 0;
     579                pCaps->hwCaps.dpcTriCaps.dwTextureAddressCaps = 0;
     580                pCaps->hwCaps.dpcTriCaps.dwStippleWidth = 0;
     581                pCaps->hwCaps.dpcTriCaps.dwStippleHeight = 0;
     582                pCaps->hwCaps.dwDeviceRenderBitDepth = 0;
     583                pCaps->hwCaps.dwDeviceZBufferBitDepth = 0;
     584                pCaps->hwCaps.dwMaxBufferSize = 0;
     585                pCaps->hwCaps.dwMaxVertexCount = 0;
     586
     587
     588                pCaps->dwNumVertices = 0;
     589                pCaps->dwNumClipVertices = 0;
     590                pCaps->dwNumTextureFormats = 0;
     591                pCaps->lpTextureFormats = NULL;
     592            }
    537593            else
    538594                hr = E_INVALIDARG;
     
    12521308static HRESULT APIENTRY vboxWddmDDevDestroyDevice(IN HANDLE hDevice)
    12531309{
     1310    vboxVDbgPrintF(("==> "__FUNCTION__", hDevice(0x%p)\n", hDevice));
     1311    AssertBreakpoint();
    12541312    RTMemFree(hDevice);
    12551313    vboxVDbgPrintF(("<== "__FUNCTION__", hDevice(0x%p)\n", hDevice));
    1256     AssertBreakpoint();
    1257     RTMemFree(hDevice);
    1258     vboxVDbgPrintF(("==> "__FUNCTION__", hDevice(0x%p)\n", hDevice));
    12591314    return S_OK;
    12601315}
     
    13331388static HRESULT APIENTRY vboxWddmDispCreateDevice (IN HANDLE hAdapter, IN D3DDDIARG_CREATEDEVICE* pCreateData)
    13341389{
    1335     vboxVDbgPrint(("==> "__FUNCTION__", hAdapter(0x%p)\n", hAdapter));
     1390    HRESULT hr = S_OK;
     1391    vboxVDbgPrint(("==> "__FUNCTION__", hAdapter(0x%p), Interface(%d), Version(%d)\n", hAdapter, pCreateData->Interface, pCreateData->Version));
    13361392
    13371393//    AssertBreakpoint();
    13381394
    13391395    PVBOXWDDMDISP_DEVICE pDevice = (PVBOXWDDMDISP_DEVICE)RTMemAllocZ(sizeof (VBOXWDDMDISP_DEVICE));
    1340     if (!pDevice)
     1396    if (pDevice)
     1397    {
     1398        PVBOXWDDMDISP_ADAPTER pAdapter = (PVBOXWDDMDISP_ADAPTER)hAdapter;
     1399
     1400        pDevice->hDevice = pCreateData->hDevice;
     1401        pDevice->pAdapter = pAdapter;
     1402        pDevice->u32IfVersion = pCreateData->Interface;
     1403        pDevice->uRtVersion = pCreateData->Version;
     1404        pDevice->RtCallbacks = *pCreateData->pCallbacks;
     1405        pDevice->pvCmdBuffer = pCreateData->pCommandBuffer;
     1406        pDevice->cbCmdBuffer = pCreateData->CommandBufferSize;
     1407        pDevice->fFlags = pCreateData->Flags;
     1408
     1409        Assert(!pCreateData->AllocationListSize);
     1410        Assert(!pCreateData->PatchLocationListSize);
     1411
     1412        pCreateData->hDevice = pDevice;
     1413
     1414        pCreateData->pDeviceFuncs->pfnSetRenderState = vboxWddmDDevSetRenderState;
     1415        pCreateData->pDeviceFuncs->pfnUpdateWInfo = vboxWddmDDevUpdateWInfo;
     1416        pCreateData->pDeviceFuncs->pfnValidateDevice = vboxWddmDDevValidateDevice;
     1417        pCreateData->pDeviceFuncs->pfnSetTextureStageState = vboxWddmDDevSetTextureStageState;
     1418        pCreateData->pDeviceFuncs->pfnSetTexture = vboxWddmDDevSetTexture;
     1419        pCreateData->pDeviceFuncs->pfnSetPixelShader = vboxWddmDDevSetPixelShader;
     1420        pCreateData->pDeviceFuncs->pfnSetPixelShaderConst = vboxWddmDDevSetPixelShaderConst;
     1421        pCreateData->pDeviceFuncs->pfnSetStreamSourceUm = vboxWddmDDevSetStreamSourceUm;
     1422        pCreateData->pDeviceFuncs->pfnSetIndices = vboxWddmDDevSetIndices;
     1423        pCreateData->pDeviceFuncs->pfnSetIndicesUm = vboxWddmDDevSetIndicesUm;
     1424        pCreateData->pDeviceFuncs->pfnDrawPrimitive = vboxWddmDDevDrawPrimitive;
     1425        pCreateData->pDeviceFuncs->pfnDrawIndexedPrimitive = vboxWddmDDevDrawIndexedPrimitive;
     1426        pCreateData->pDeviceFuncs->pfnDrawRectPatch = vboxWddmDDevDrawRectPatch;
     1427        pCreateData->pDeviceFuncs->pfnDrawTriPatch = vboxWddmDDevDrawTriPatch;
     1428        pCreateData->pDeviceFuncs->pfnDrawPrimitive2 = vboxWddmDDevDrawPrimitive2;
     1429        pCreateData->pDeviceFuncs->pfnDrawIndexedPrimitive2 = vboxWddmDDevDrawIndexedPrimitive2;
     1430        pCreateData->pDeviceFuncs->pfnVolBlt = vboxWddmDDevVolBlt;
     1431        pCreateData->pDeviceFuncs->pfnBufBlt = vboxWddmDDevBufBlt;
     1432        pCreateData->pDeviceFuncs->pfnTexBlt = vboxWddmDDevTexBlt;
     1433        pCreateData->pDeviceFuncs->pfnStateSet = vboxWddmDDevStateSet;
     1434        pCreateData->pDeviceFuncs->pfnSetPriority = vboxWddmDDevSetPriority;
     1435        pCreateData->pDeviceFuncs->pfnClear = vboxWddmDDevClear;
     1436        pCreateData->pDeviceFuncs->pfnUpdatePalette = vboxWddmDDevUpdatePalette;
     1437        pCreateData->pDeviceFuncs->pfnSetPalette = vboxWddmDDevSetPalette;
     1438        pCreateData->pDeviceFuncs->pfnSetVertexShaderConst = vboxWddmDDevSetVertexShaderConst;
     1439        pCreateData->pDeviceFuncs->pfnMultiplyTransform = vboxWddmDDevMultiplyTransform;
     1440        pCreateData->pDeviceFuncs->pfnSetTransform = vboxWddmDDevSetTransform;
     1441        pCreateData->pDeviceFuncs->pfnSetViewport = vboxWddmDDevSetViewport;
     1442        pCreateData->pDeviceFuncs->pfnSetZRange = vboxWddmDDevSetZRange;
     1443        pCreateData->pDeviceFuncs->pfnSetMaterial = vboxWddmDDevSetMaterial;
     1444        pCreateData->pDeviceFuncs->pfnSetLight = vboxWddmDDevSetLight;
     1445        pCreateData->pDeviceFuncs->pfnCreateLight = vboxWddmDDevCreateLight;
     1446        pCreateData->pDeviceFuncs->pfnDestroyLight = vboxWddmDDevDestroyLight;
     1447        pCreateData->pDeviceFuncs->pfnSetClipPlane = vboxWddmDDevSetClipPlane;
     1448        pCreateData->pDeviceFuncs->pfnGetInfo = vboxWddmDDevGetInfo;
     1449        pCreateData->pDeviceFuncs->pfnLock = vboxWddmDDevLock;
     1450        pCreateData->pDeviceFuncs->pfnUnlock = vboxWddmDDevUnlock;
     1451        pCreateData->pDeviceFuncs->pfnCreateResource = vboxWddmDDevCreateResource;
     1452        pCreateData->pDeviceFuncs->pfnDestroyResource = vboxWddmDDevDestroyResource;
     1453        pCreateData->pDeviceFuncs->pfnSetDisplayMode = vboxWddmDDevSetDisplayMode;
     1454        pCreateData->pDeviceFuncs->pfnPresent = vboxWddmDDevPresent;
     1455        pCreateData->pDeviceFuncs->pfnFlush = vboxWddmDDevFlush;
     1456        pCreateData->pDeviceFuncs->pfnCreateVertexShaderFunc = vboxWddmDDevCreateVertexShaderFunc;
     1457        pCreateData->pDeviceFuncs->pfnDeleteVertexShaderFunc = vboxWddmDDevDeleteVertexShaderFunc;
     1458        pCreateData->pDeviceFuncs->pfnSetVertexShaderFunc = vboxWddmDDevSetVertexShaderFunc;
     1459        pCreateData->pDeviceFuncs->pfnCreateVertexShaderDecl = vboxWddmDDevCreateVertexShaderDecl;
     1460        pCreateData->pDeviceFuncs->pfnDeleteVertexShaderDecl = vboxWddmDDevDeleteVertexShaderDecl;
     1461        pCreateData->pDeviceFuncs->pfnSetVertexShaderDecl = vboxWddmDDevSetVertexShaderDecl;
     1462        pCreateData->pDeviceFuncs->pfnSetVertexShaderConstI = vboxWddmDDevSetVertexShaderConstI;
     1463        pCreateData->pDeviceFuncs->pfnSetVertexShaderConstB = vboxWddmDDevSetVertexShaderConstB;
     1464        pCreateData->pDeviceFuncs->pfnSetScissorRect = vboxWddmDDevSetScissorRect;
     1465        pCreateData->pDeviceFuncs->pfnSetStreamSource = vboxWddmDDevSetStreamSource;
     1466        pCreateData->pDeviceFuncs->pfnSetStreamSourceFreq = vboxWddmDDevSetStreamSourceFreq;
     1467        pCreateData->pDeviceFuncs->pfnSetConvolutionKernelMono = vboxWddmDDevSetConvolutionKernelMono;
     1468        pCreateData->pDeviceFuncs->pfnComposeRects = vboxWddmDDevComposeRects;
     1469        pCreateData->pDeviceFuncs->pfnBlt = vboxWddmDDevBlt;
     1470        pCreateData->pDeviceFuncs->pfnColorFill = vboxWddmDDevColorFill;
     1471        pCreateData->pDeviceFuncs->pfnDepthFill = vboxWddmDDevDepthFill;
     1472        pCreateData->pDeviceFuncs->pfnCreateQuery = vboxWddmDDevCreateQuery;
     1473        pCreateData->pDeviceFuncs->pfnDestroyQuery = vboxWddmDDevDestroyQuery;
     1474        pCreateData->pDeviceFuncs->pfnIssueQuery = vboxWddmDDevIssueQuery;
     1475        pCreateData->pDeviceFuncs->pfnGetQueryData = vboxWddmDDevGetQueryData;
     1476        pCreateData->pDeviceFuncs->pfnSetRenderTarget = vboxWddmDDevSetRenderTarget;
     1477        pCreateData->pDeviceFuncs->pfnSetDepthStencil = vboxWddmDDevSetDepthStencil;
     1478        pCreateData->pDeviceFuncs->pfnGenerateMipSubLevels = vboxWddmDDevGenerateMipSubLevels;
     1479        pCreateData->pDeviceFuncs->pfnSetPixelShaderConstI = vboxWddmDDevSetPixelShaderConstI;
     1480        pCreateData->pDeviceFuncs->pfnSetPixelShaderConstB = vboxWddmDDevSetPixelShaderConstB;
     1481        pCreateData->pDeviceFuncs->pfnCreatePixelShader = vboxWddmDDevCreatePixelShader;
     1482        pCreateData->pDeviceFuncs->pfnDeletePixelShader = vboxWddmDDevDeletePixelShader;
     1483        pCreateData->pDeviceFuncs->pfnCreateDecodeDevice = vboxWddmDDevCreateDecodeDevice;
     1484        pCreateData->pDeviceFuncs->pfnDestroyDecodeDevice = vboxWddmDDevDestroyDecodeDevice;
     1485        pCreateData->pDeviceFuncs->pfnSetDecodeRenderTarget = vboxWddmDDevSetDecodeRenderTarget;
     1486        pCreateData->pDeviceFuncs->pfnDecodeBeginFrame = vboxWddmDDevDecodeBeginFrame;
     1487        pCreateData->pDeviceFuncs->pfnDecodeEndFrame = vboxWddmDDevDecodeEndFrame;
     1488        pCreateData->pDeviceFuncs->pfnDecodeExecute = vboxWddmDDevDecodeExecute;
     1489        pCreateData->pDeviceFuncs->pfnDecodeExtensionExecute = vboxWddmDDevDecodeExtensionExecute;
     1490        pCreateData->pDeviceFuncs->pfnCreateVideoProcessDevice = vboxWddmDDevCreateVideoProcessDevice;
     1491        pCreateData->pDeviceFuncs->pfnDestroyVideoProcessDevice = vboxWddmDDevDestroyVideoProcessDevice;
     1492        pCreateData->pDeviceFuncs->pfnVideoProcessBeginFrame = vboxWddmDDevVideoProcessBeginFrame;
     1493        pCreateData->pDeviceFuncs->pfnVideoProcessEndFrame = vboxWddmDDevVideoProcessEndFrame;
     1494        pCreateData->pDeviceFuncs->pfnSetVideoProcessRenderTarget = vboxWddmDDevSetVideoProcessRenderTarget;
     1495        pCreateData->pDeviceFuncs->pfnVideoProcessBlt = vboxWddmDDevVideoProcessBlt;
     1496        pCreateData->pDeviceFuncs->pfnCreateExtensionDevice = vboxWddmDDevCreateExtensionDevice;
     1497        pCreateData->pDeviceFuncs->pfnDestroyExtensionDevice = vboxWddmDDevDestroyExtensionDevice;
     1498        pCreateData->pDeviceFuncs->pfnExtensionExecute = vboxWddmDDevExtensionExecute;
     1499        pCreateData->pDeviceFuncs->pfnCreateOverlay = vboxWddmDDevCreateOverlay;
     1500        pCreateData->pDeviceFuncs->pfnUpdateOverlay = vboxWddmDDevUpdateOverlay;
     1501        pCreateData->pDeviceFuncs->pfnFlipOverlay = vboxWddmDDevFlipOverlay;
     1502        pCreateData->pDeviceFuncs->pfnGetOverlayColorControls = vboxWddmDDevGetOverlayColorControls;
     1503        pCreateData->pDeviceFuncs->pfnSetOverlayColorControls = vboxWddmDDevSetOverlayColorControls;
     1504        pCreateData->pDeviceFuncs->pfnDestroyOverlay = vboxWddmDDevDestroyOverlay;
     1505        pCreateData->pDeviceFuncs->pfnDestroyDevice = vboxWddmDDevDestroyDevice;
     1506        pCreateData->pDeviceFuncs->pfnQueryResourceResidency = vboxWddmDDevQueryResourceResidency;
     1507        pCreateData->pDeviceFuncs->pfnOpenResource = vboxWddmDDevOpenResource;
     1508        pCreateData->pDeviceFuncs->pfnGetCaptureAllocationHandle = vboxWddmDDevGetCaptureAllocationHandle;
     1509        pCreateData->pDeviceFuncs->pfnCaptureToSysMem = vboxWddmDDevCaptureToSysMem;
     1510        pCreateData->pDeviceFuncs->pfnLockAsync = NULL; //vboxWddmDDevLockAsync;
     1511        pCreateData->pDeviceFuncs->pfnUnlockAsync = NULL; //vboxWddmDDevUnlockAsync;
     1512        pCreateData->pDeviceFuncs->pfnRename = NULL; //vboxWddmDDevRename;
     1513
     1514
     1515        do
     1516        {
     1517            if (!pCreateData->AllocationListSize
     1518                    && !pCreateData->PatchLocationListSize)
     1519            {
     1520                /* check whether this is a D3D or DDraw, use wine lib only in the former (D3D) case */
     1521                /* TODO: is this a correct way to check this ? */
     1522                if (pDevice->RtCallbacks.pfnCreateOverlayCb)
     1523                {
     1524                    /* DDraw */
     1525                    vboxVDbgPrint((__FUNCTION__": DirectDraw Device Created\n"));
     1526                    break;
     1527                }
     1528                else
     1529                {
     1530                    /* D3D */
     1531                    if (pAdapter->pD3D9If)
     1532                    {
     1533                        /* */
     1534                        vboxVDbgPrint((__FUNCTION__": TODO: Implement D3D Device Creation\n"));
     1535                        break;
     1536                    }
     1537                    else
     1538                    {
     1539                        /* ballback */
     1540                        vboxVDbgPrint((__FUNCTION__": D3D Device Being Created, but D3D is unavailable\n"));
     1541                        break;
     1542                    }
     1543                }
     1544            }
     1545            else
     1546            {
     1547                vboxVDbgPrintR((__FUNCTION__": Not implemented: PatchLocationListSize(%d), AllocationListSize(%d)\n",
     1548                        pCreateData->PatchLocationListSize, pCreateData->AllocationListSize));
     1549                //pCreateData->pAllocationList = ??
     1550                hr = E_FAIL;
     1551            }
     1552
     1553            RTMemFree(pDevice);
     1554        } while (0);
     1555    }
     1556    else
    13411557    {
    13421558        vboxVDbgPrintR((__FUNCTION__": RTMemAllocZ returned NULL\n"));
    1343         return E_OUTOFMEMORY;
     1559        hr = E_OUTOFMEMORY;
    13441560    }
    13451561
    1346     PVBOXWDDMDISP_ADAPTER pAdapter = (PVBOXWDDMDISP_ADAPTER)hAdapter;
    1347 
    1348     pDevice->hDevice = pCreateData->hDevice;
    1349     pDevice->pAdapter = pAdapter;
    1350     pDevice->u32IfVersion = pCreateData->Interface;
    1351     pDevice->uRtVersion = pCreateData->Version;
    1352     pDevice->RtCallbacks = *pCreateData->pCallbacks;
    1353     pDevice->pvCmdBuffer = pCreateData->pCommandBuffer;
    1354     pDevice->cbCmdBuffer = pCreateData->CommandBufferSize;
    1355     pDevice->fFlags = pCreateData->Flags;
    1356     Assert(!pCreateData->AllocationListSize);
    1357     if (pCreateData->AllocationListSize)
    1358     {
    1359         vboxVDbgPrintR((__FUNCTION__": Not implemented: AllocationListSize(%d)\n", pCreateData->AllocationListSize));
    1360         //pCreateData->pAllocationList = ??
    1361         return E_FAIL;
    1362     }
    1363 
    1364     Assert(!pCreateData->PatchLocationListSize);
    1365     if (pCreateData->PatchLocationListSize)
    1366     {
    1367         vboxVDbgPrintR((__FUNCTION__": Not implemented: PatchLocationListSize(%d)\n", pCreateData->PatchLocationListSize));
    1368         //pCreateData->pPatchLocationList = ??
    1369         return E_FAIL;
    1370     }
    1371 
    1372     pCreateData->pDeviceFuncs->pfnSetRenderState = vboxWddmDDevSetRenderState;
    1373     pCreateData->pDeviceFuncs->pfnUpdateWInfo = vboxWddmDDevUpdateWInfo;
    1374     pCreateData->pDeviceFuncs->pfnValidateDevice = vboxWddmDDevValidateDevice;
    1375     pCreateData->pDeviceFuncs->pfnSetTextureStageState = vboxWddmDDevSetTextureStageState;
    1376     pCreateData->pDeviceFuncs->pfnSetTexture = vboxWddmDDevSetTexture;
    1377     pCreateData->pDeviceFuncs->pfnSetPixelShader = vboxWddmDDevSetPixelShader;
    1378     pCreateData->pDeviceFuncs->pfnSetPixelShaderConst = vboxWddmDDevSetPixelShaderConst;
    1379     pCreateData->pDeviceFuncs->pfnSetStreamSourceUm = vboxWddmDDevSetStreamSourceUm;
    1380     pCreateData->pDeviceFuncs->pfnSetIndices = vboxWddmDDevSetIndices;
    1381     pCreateData->pDeviceFuncs->pfnSetIndicesUm = vboxWddmDDevSetIndicesUm;
    1382     pCreateData->pDeviceFuncs->pfnDrawPrimitive = vboxWddmDDevDrawPrimitive;
    1383     pCreateData->pDeviceFuncs->pfnDrawIndexedPrimitive = vboxWddmDDevDrawIndexedPrimitive;
    1384     pCreateData->pDeviceFuncs->pfnDrawRectPatch = vboxWddmDDevDrawRectPatch;
    1385     pCreateData->pDeviceFuncs->pfnDrawTriPatch = vboxWddmDDevDrawTriPatch;
    1386     pCreateData->pDeviceFuncs->pfnDrawPrimitive2 = vboxWddmDDevDrawPrimitive2;
    1387     pCreateData->pDeviceFuncs->pfnDrawIndexedPrimitive2 = vboxWddmDDevDrawIndexedPrimitive2;
    1388     pCreateData->pDeviceFuncs->pfnVolBlt = vboxWddmDDevVolBlt;
    1389     pCreateData->pDeviceFuncs->pfnBufBlt = vboxWddmDDevBufBlt;
    1390     pCreateData->pDeviceFuncs->pfnTexBlt = vboxWddmDDevTexBlt;
    1391     pCreateData->pDeviceFuncs->pfnStateSet = vboxWddmDDevStateSet;
    1392     pCreateData->pDeviceFuncs->pfnSetPriority = vboxWddmDDevSetPriority;
    1393     pCreateData->pDeviceFuncs->pfnClear = vboxWddmDDevClear;
    1394     pCreateData->pDeviceFuncs->pfnUpdatePalette = vboxWddmDDevUpdatePalette;
    1395     pCreateData->pDeviceFuncs->pfnSetPalette = vboxWddmDDevSetPalette;
    1396     pCreateData->pDeviceFuncs->pfnSetVertexShaderConst = vboxWddmDDevSetVertexShaderConst;
    1397     pCreateData->pDeviceFuncs->pfnMultiplyTransform = vboxWddmDDevMultiplyTransform;
    1398     pCreateData->pDeviceFuncs->pfnSetTransform = vboxWddmDDevSetTransform;
    1399     pCreateData->pDeviceFuncs->pfnSetViewport = vboxWddmDDevSetViewport;
    1400     pCreateData->pDeviceFuncs->pfnSetZRange = vboxWddmDDevSetZRange;
    1401     pCreateData->pDeviceFuncs->pfnSetMaterial = vboxWddmDDevSetMaterial;
    1402     pCreateData->pDeviceFuncs->pfnSetLight = vboxWddmDDevSetLight;
    1403     pCreateData->pDeviceFuncs->pfnCreateLight = vboxWddmDDevCreateLight;
    1404     pCreateData->pDeviceFuncs->pfnDestroyLight = vboxWddmDDevDestroyLight;
    1405     pCreateData->pDeviceFuncs->pfnSetClipPlane = vboxWddmDDevSetClipPlane;
    1406     pCreateData->pDeviceFuncs->pfnGetInfo = vboxWddmDDevGetInfo;
    1407     pCreateData->pDeviceFuncs->pfnLock = vboxWddmDDevLock;
    1408     pCreateData->pDeviceFuncs->pfnUnlock = vboxWddmDDevUnlock;
    1409     pCreateData->pDeviceFuncs->pfnCreateResource = vboxWddmDDevCreateResource;
    1410     pCreateData->pDeviceFuncs->pfnDestroyResource = vboxWddmDDevDestroyResource;
    1411     pCreateData->pDeviceFuncs->pfnSetDisplayMode = vboxWddmDDevSetDisplayMode;
    1412     pCreateData->pDeviceFuncs->pfnPresent = vboxWddmDDevPresent;
    1413     pCreateData->pDeviceFuncs->pfnFlush = vboxWddmDDevFlush;
    1414     pCreateData->pDeviceFuncs->pfnCreateVertexShaderFunc = vboxWddmDDevCreateVertexShaderFunc;
    1415     pCreateData->pDeviceFuncs->pfnDeleteVertexShaderFunc = vboxWddmDDevDeleteVertexShaderFunc;
    1416     pCreateData->pDeviceFuncs->pfnSetVertexShaderFunc = vboxWddmDDevSetVertexShaderFunc;
    1417     pCreateData->pDeviceFuncs->pfnCreateVertexShaderDecl = vboxWddmDDevCreateVertexShaderDecl;
    1418     pCreateData->pDeviceFuncs->pfnDeleteVertexShaderDecl = vboxWddmDDevDeleteVertexShaderDecl;
    1419     pCreateData->pDeviceFuncs->pfnSetVertexShaderDecl = vboxWddmDDevSetVertexShaderDecl;
    1420     pCreateData->pDeviceFuncs->pfnSetVertexShaderConstI = vboxWddmDDevSetVertexShaderConstI;
    1421     pCreateData->pDeviceFuncs->pfnSetVertexShaderConstB = vboxWddmDDevSetVertexShaderConstB;
    1422     pCreateData->pDeviceFuncs->pfnSetScissorRect = vboxWddmDDevSetScissorRect;
    1423     pCreateData->pDeviceFuncs->pfnSetStreamSource = vboxWddmDDevSetStreamSource;
    1424     pCreateData->pDeviceFuncs->pfnSetStreamSourceFreq = vboxWddmDDevSetStreamSourceFreq;
    1425     pCreateData->pDeviceFuncs->pfnSetConvolutionKernelMono = vboxWddmDDevSetConvolutionKernelMono;
    1426     pCreateData->pDeviceFuncs->pfnComposeRects = vboxWddmDDevComposeRects;
    1427     pCreateData->pDeviceFuncs->pfnBlt = vboxWddmDDevBlt;
    1428     pCreateData->pDeviceFuncs->pfnColorFill = vboxWddmDDevColorFill;
    1429     pCreateData->pDeviceFuncs->pfnDepthFill = vboxWddmDDevDepthFill;
    1430     pCreateData->pDeviceFuncs->pfnCreateQuery = vboxWddmDDevCreateQuery;
    1431     pCreateData->pDeviceFuncs->pfnDestroyQuery = vboxWddmDDevDestroyQuery;
    1432     pCreateData->pDeviceFuncs->pfnIssueQuery = vboxWddmDDevIssueQuery;
    1433     pCreateData->pDeviceFuncs->pfnGetQueryData = vboxWddmDDevGetQueryData;
    1434     pCreateData->pDeviceFuncs->pfnSetRenderTarget = vboxWddmDDevSetRenderTarget;
    1435     pCreateData->pDeviceFuncs->pfnSetDepthStencil = vboxWddmDDevSetDepthStencil;
    1436     pCreateData->pDeviceFuncs->pfnGenerateMipSubLevels = vboxWddmDDevGenerateMipSubLevels;
    1437     pCreateData->pDeviceFuncs->pfnSetPixelShaderConstI = vboxWddmDDevSetPixelShaderConstI;
    1438     pCreateData->pDeviceFuncs->pfnSetPixelShaderConstB = vboxWddmDDevSetPixelShaderConstB;
    1439     pCreateData->pDeviceFuncs->pfnCreatePixelShader = vboxWddmDDevCreatePixelShader;
    1440     pCreateData->pDeviceFuncs->pfnDeletePixelShader = vboxWddmDDevDeletePixelShader;
    1441     pCreateData->pDeviceFuncs->pfnCreateDecodeDevice = vboxWddmDDevCreateDecodeDevice;
    1442     pCreateData->pDeviceFuncs->pfnDestroyDecodeDevice = vboxWddmDDevDestroyDecodeDevice;
    1443     pCreateData->pDeviceFuncs->pfnSetDecodeRenderTarget = vboxWddmDDevSetDecodeRenderTarget;
    1444     pCreateData->pDeviceFuncs->pfnDecodeBeginFrame = vboxWddmDDevDecodeBeginFrame;
    1445     pCreateData->pDeviceFuncs->pfnDecodeEndFrame = vboxWddmDDevDecodeEndFrame;
    1446     pCreateData->pDeviceFuncs->pfnDecodeExecute = vboxWddmDDevDecodeExecute;
    1447     pCreateData->pDeviceFuncs->pfnDecodeExtensionExecute = vboxWddmDDevDecodeExtensionExecute;
    1448     pCreateData->pDeviceFuncs->pfnCreateVideoProcessDevice = vboxWddmDDevCreateVideoProcessDevice;
    1449     pCreateData->pDeviceFuncs->pfnDestroyVideoProcessDevice = vboxWddmDDevDestroyVideoProcessDevice;
    1450     pCreateData->pDeviceFuncs->pfnVideoProcessBeginFrame = vboxWddmDDevVideoProcessBeginFrame;
    1451     pCreateData->pDeviceFuncs->pfnVideoProcessEndFrame = vboxWddmDDevVideoProcessEndFrame;
    1452     pCreateData->pDeviceFuncs->pfnSetVideoProcessRenderTarget = vboxWddmDDevSetVideoProcessRenderTarget;
    1453     pCreateData->pDeviceFuncs->pfnVideoProcessBlt = vboxWddmDDevVideoProcessBlt;
    1454     pCreateData->pDeviceFuncs->pfnCreateExtensionDevice = vboxWddmDDevCreateExtensionDevice;
    1455     pCreateData->pDeviceFuncs->pfnDestroyExtensionDevice = vboxWddmDDevDestroyExtensionDevice;
    1456     pCreateData->pDeviceFuncs->pfnExtensionExecute = vboxWddmDDevExtensionExecute;
    1457     pCreateData->pDeviceFuncs->pfnCreateOverlay = vboxWddmDDevCreateOverlay;
    1458     pCreateData->pDeviceFuncs->pfnUpdateOverlay = vboxWddmDDevUpdateOverlay;
    1459     pCreateData->pDeviceFuncs->pfnFlipOverlay = vboxWddmDDevFlipOverlay;
    1460     pCreateData->pDeviceFuncs->pfnGetOverlayColorControls = vboxWddmDDevGetOverlayColorControls;
    1461     pCreateData->pDeviceFuncs->pfnSetOverlayColorControls = vboxWddmDDevSetOverlayColorControls;
    1462     pCreateData->pDeviceFuncs->pfnDestroyOverlay = vboxWddmDDevDestroyOverlay;
    1463     pCreateData->pDeviceFuncs->pfnDestroyDevice = vboxWddmDDevDestroyDevice;
    1464     pCreateData->pDeviceFuncs->pfnQueryResourceResidency = vboxWddmDDevQueryResourceResidency;
    1465     pCreateData->pDeviceFuncs->pfnOpenResource = vboxWddmDDevOpenResource;
    1466     pCreateData->pDeviceFuncs->pfnGetCaptureAllocationHandle = vboxWddmDDevGetCaptureAllocationHandle;
    1467     pCreateData->pDeviceFuncs->pfnCaptureToSysMem = vboxWddmDDevCaptureToSysMem;
    1468     pCreateData->pDeviceFuncs->pfnLockAsync = NULL; //vboxWddmDDevLockAsync;
    1469     pCreateData->pDeviceFuncs->pfnUnlockAsync = NULL; //vboxWddmDDevUnlockAsync;
    1470     pCreateData->pDeviceFuncs->pfnRename = NULL; //vboxWddmDDevRename;
    1471 
    14721562    vboxVDbgPrint(("<== "__FUNCTION__", hAdapter(0x%p)\n", hAdapter));
    14731563
    1474     return S_OK;
     1564    return hr;
    14751565}
    14761566
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette