VirtualBox

Ignore:
Timestamp:
Jun 19, 2013 2:22:29 PM (12 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
86552
Message:

wddm/3d/wine: set host id impl

Location:
trunk/src/VBox/Additions/WINNT/Graphics/Wine_new
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine_new/d3d9/d3d9wddm.def

    r46521 r46662  
    2222  VBoxWineExD3DDev9VolBlt
    2323  VBoxWineExD3DDev9VolTexBlt
     24  VBoxWineExD3DSurf9GetHostId
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine_new/d3d9/surface.c

    r46521 r46662  
    458458    return impl_from_IDirect3DSurface9(iface);
    459459}
     460
     461#ifdef VBOX_WITH_WDDM
     462VBOXWINEEX_DECL(HRESULT) VBoxWineExD3DSurf9GetHostId(IDirect3DSurface9 *iface, uint32_t *pu32Id)
     463{
     464    struct d3d9_surface *surface = impl_from_IDirect3DSurface9(iface);
     465    HRESULT hr;
     466    wined3d_mutex_lock();
     467    hr = wined3d_surface_get_host_id(surface->wined3d_surface, pu32Id);
     468    wined3d_mutex_unlock();
     469    return hr;
     470}
     471#endif
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine_new/vbox/VBoxWineEx.h

    r46521 r46662  
    7878typedef FNVBOXWINEEXD3DDEV9_TERM *PFNVBOXWINEEXD3DDEV9_TERM;
    7979
     80typedef VBOXWINEEX_DECL(HRESULT) FNVBOXWINEEXD3DSURF9_GETHOSTID(IDirect3DSurface9 *iface, uint32_t *pu32Id);
     81typedef FNVBOXWINEEXD3DSURF9_GETHOSTID *PFNVBOXWINEEXD3DSURF9_GETHOSTID;
     82
    8083typedef VBOXWINEEX_DECL(HRESULT) FNVBOXWINEEXD3DSWAPCHAIN9_PRESENT(IDirect3DSwapChain9 *iface, IDirect3DSurface9 *surf);
    8184typedef FNVBOXWINEEXD3DSWAPCHAIN9_PRESENT *PFNVBOXWINEEXD3DSWAPCHAIN9_PRESENT;
     
    120123VBOXWINEEX_DECL(HRESULT) VBoxWineExD3DDev9Term(IDirect3DDevice9Ex *iface);
    121124
     125VBOXWINEEX_DECL(HRESULT) VBoxWineExD3DSurf9GetHostId(IDirect3DSurface9 *iface, uint32_t *pu32Id);
     126
    122127VBOXWINEEX_DECL(HRESULT) VBoxWineExD3DSwapchain9Present(IDirect3DSwapChain9 *iface,
    123128                                IDirect3DSurface9 *surf); /* use the given surface as a frontbuffer content source */
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine_new/vbox/libWineStub/include/wine/wined3d.h

    r46521 r46662  
    24792479HRESULT __cdecl wined3d_device_blt_vol(struct wined3d_device *device, struct wined3d_volume *src, struct wined3d_volume *dst, const struct wined3d_box *pSrcBoxArg, const struct VBOXPOINT3D *pDstPoin3D);
    24802480HRESULT __cdecl wined3d_device_blt_voltex(struct wined3d_device *device, struct wined3d_texture *src, struct wined3d_texture *dst, const struct wined3d_box *pSrcBoxArg, const struct VBOXPOINT3D *pDstPoin3D);
     2481HRESULT __cdecl wined3d_surface_get_host_id(struct wined3d_surface *surface, uint32_t *id);
    24812482
    24822483HRESULT __cdecl wined3d_swapchain_present_rt(struct wined3d_swapchain *swapchain, struct wined3d_surface *rt);
    2483 
    24842484#endif
    24852485
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine_new/wined3d/surface.c

    r46521 r46662  
    77677767    return hr;
    77687768}
     7769
     7770#ifdef VBOX_WITH_WDDM
     7771HRESULT CDECL wined3d_surface_get_host_id(struct wined3d_surface *surface, uint32_t *id)
     7772{
     7773    struct wined3d_texture *texture;
     7774    surface_internal_preload(surface, SRGB_RGB);
     7775
     7776    texture = surface->container;
     7777    if (texture && texture->level_count != 1 && texture->layer_count != 1)
     7778    {
     7779        ERR("unsupported level(%d) or layer(%d) count", texture->level_count, texture->layer_count);
     7780    }
     7781
     7782    if (!surface->texture_name)
     7783    {
     7784        ERR("no texture name!");
     7785        return E_FAIL;
     7786    }
     7787
     7788    *id = surface->texture_name;
     7789    return S_OK;
     7790}
     7791#endif
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine_new/wined3d/wined3dwddm.def

    r46521 r46662  
    258258  wined3d_device_blt_voltex
    259259  wined3d_swapchain_present_rt
    260  
     260  wined3d_surface_get_host_id
Note: See TracChangeset for help on using the changeset viewer.

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