Initialize the back-buffer with the correct VTable.
[wine.git] / dlls / ddraw / dga_private.h
blobf292b1629c7aa214940ac91f43904a0122d989d2
1 #ifndef __WINE_DDRAW_DGA_PRIVATE_H
2 #define __WINE_DDRAW_DGA_PRIVATE_H
4 #include "ddraw_private.h"
5 #include "x11_private.h"
7 #include "ts_xf86dga.h"
9 #ifdef HAVE_LIBXXF86VM
10 # include "ts_xf86vmode.h"
11 extern XF86VidModeModeInfo *orig_mode;
12 #endif /* defined(HAVE_LIBXXF86VM) */
14 extern ICOM_VTABLE(IDirectDrawSurface4) dga_dds4vt;
15 extern ICOM_VTABLE(IDirectDraw) dga_ddvt;
16 extern ICOM_VTABLE(IDirectDrawPalette) dga_ddpalvt;
18 typedef struct dga_dd_private {
19 DWORD fb_height; /* height of the viewport */
20 DWORD fb_width; /* width of the viewport */
21 caddr_t fb_addr; /* start address of the framebuffer */
22 DWORD fb_memsize; /* total memory on the card */
23 DWORD vpmask; /* viewports in use flag bitmap */
24 void (*InstallColormap)(Display *, int, Colormap) ;
25 } dga_dd_private;
27 typedef x11_dp_private dga_dp_private; /* reuse X11 palette stuff */
29 typedef struct dga_ds_private {
30 DWORD fb_height;
31 int *oldDIBmap;
32 } dga_ds_private;
34 /* For usage in DGA2 */
35 extern ULONG WINAPI DGA_IDirectDrawSurface4Impl_Release(LPDIRECTDRAWSURFACE4 iface) ;
36 extern HRESULT WINAPI DGA_IDirectDrawSurface4Impl_SetPalette(LPDIRECTDRAWSURFACE4 iface,LPDIRECTDRAWPALETTE pal) ;
37 extern HRESULT WINAPI DGA_IDirectDrawSurface4Impl_Unlock(LPDIRECTDRAWSURFACE4 iface,LPVOID surface) ;
38 extern HRESULT WINAPI DGA_IDirectDrawSurface4Impl_GetDC(LPDIRECTDRAWSURFACE4 iface,HDC* lphdc);
40 extern HRESULT WINAPI DGA_IDirectDraw2Impl_CreateSurface_with_VT(LPDIRECTDRAW2 iface,LPDDSURFACEDESC lpddsd,
41 LPDIRECTDRAWSURFACE *lpdsf,IUnknown *lpunk, void *vtable) ;
43 extern HRESULT WINAPI DGA_IDirectDraw2Impl_QueryInterface(LPDIRECTDRAW2 iface,REFIID refiid,LPVOID *obj) ;
44 extern HRESULT WINAPI DGA_IDirectDraw2Impl_GetCaps(LPDIRECTDRAW2 iface,LPDDCAPS caps1,LPDDCAPS caps2) ;
46 extern HRESULT WINAPI DGA_IDirectDraw2Impl_GetDisplayMode(LPDIRECTDRAW2 iface,LPDDSURFACEDESC lpddsfd) ;
47 extern HRESULT WINAPI DGA_IDirectDraw2Impl_GetAvailableVidMem(LPDIRECTDRAW2 iface,LPDDSCAPS ddscaps,LPDWORD total,LPDWORD free) ;
50 #endif /* __WINE_DDRAW_DGA_PRIVATE_H */