66 HDC surface_dc, screen_dc;
72 TRACE(
"surface %p, rect %s, read %#x, swap_interval %u.\n",
103 TRACE_(fps)(
"%p @ approx %.2ffps\n",
153 ERR(
"Failed to get surface DC, hr %#lx.\n",
hr);
162 ERR(
"Failed to get screen DC.\n");
178 ERR(
"Failed to blit to/from screen.\n");
221 IDirectDrawSurface7_AddRef(iface);
223 TRACE(
"(%p) returning IDirectDrawSurface7 interface at %p\n",
This, *
obj);
229 IDirectDrawSurface4_AddRef(&
This->IDirectDrawSurface4_iface);
230 *
obj = &
This->IDirectDrawSurface4_iface;
231 TRACE(
"(%p) returning IDirectDrawSurface4 interface at %p\n",
This, *
obj);
237 IDirectDrawSurface3_AddRef(&
This->IDirectDrawSurface3_iface);
238 *
obj = &
This->IDirectDrawSurface3_iface;
239 TRACE(
"(%p) returning IDirectDrawSurface3 interface at %p\n",
This, *
obj);
245 IDirectDrawSurface2_AddRef(&
This->IDirectDrawSurface2_iface);
246 *
obj = &
This->IDirectDrawSurface2_iface;
247 TRACE(
"(%p) returning IDirectDrawSurface2 interface at %p\n",
This, *
obj);
254 IDirectDrawSurface_AddRef(&
This->IDirectDrawSurface_iface);
255 *
obj = &
This->IDirectDrawSurface_iface;
256 TRACE(
"(%p) returning IDirectDrawSurface interface at %p\n",
This, *
obj);
262 IDirectDrawGammaControl_AddRef(&
This->IDirectDrawGammaControl_iface);
263 *
obj = &
This->IDirectDrawGammaControl_iface;
264 TRACE(
"(%p) returning IDirectDrawGammaControl interface at %p\n",
This, *
obj);
270 WARN(
"Color control not implemented.\n");
275 if (
This->version != 7)
291 WARN(
"Failed to create device, hr %#lx.\n",
hr);
298 *
obj = &
This->device1->IDirect3DDevice_iface;
305 *
obj = &
This->IDirect3DTexture2_iface;
312 *
obj = &
This->IDirect3DTexture_iface;
319 if (
This->version != 7)
420 TRACE(
"iface %p increasing refcount to %lu.\n", iface, refcount);
435 TRACE(
"iface %p increasing refcount to %lu.\n", iface, refcount);
450 TRACE(
"iface %p increasing refcount to %lu.\n", iface, refcount);
465 TRACE(
"iface %p increasing refcount to %lu.\n", iface, refcount);
480 TRACE(
"iface %p increasing refcount to %lu.\n", iface, refcount);
495 TRACE(
"iface %p increasing refcount to %lu.\n", iface, refcount);
509 TRACE(
"iface %p.\n", iface);
518 TRACE(
"iface %p.\n", iface);
533 WARN(
"Alpha palette set on non-texture surface, returning DDERR_INVALIDSURFACETYPE.\n");
546 prev->
flags &= ~DDPCAPS_PRIMARYSURFACE;
557 surface->
palette = palette_impl;
569 TRACE(
"surface %p.\n", surface);
600 IUnknown_Release(&surface->
device1->IUnknown_inner);
607 WARN(
"Destroying surface %p with refcounts 7: %lu 4: %lu 3: %lu 2: %lu 1: %lu.\n",
622 if (
This->iface_count == 1 &&
This->attached_iface)
623 IUnknown_AddRef(
This->attached_iface);
638 WARN(
"(%p) Attempt to destroy a surface that is not a complex root\n",
This);
692 TRACE(
"iface %p decreasing refcount to %lu.\n", iface, refcount);
707 TRACE(
"iface %p decreasing refcount to %lu.\n", iface, refcount);
722 TRACE(
"iface %p decreasing refcount to %lu.\n", iface, refcount);
737 TRACE(
"iface %p decreasing refcount to %lu.\n", iface, refcount);
752 TRACE(
"iface %p decreasing refcount to %lu.\n", iface, refcount);
767 TRACE(
"iface %p decreasing refcount to %lu.\n", iface, refcount);
781 TRACE(
"iface %p.\n", iface);
790 TRACE(
"iface %p.\n", iface);
830 TRACE(
"iface %p, caps %p, attachment %p.\n", iface, caps, surface);
834 WARN(
"Surface %p is lost.\n", head_surface);
855 TRACE(
"head_surface %p, looking for caps %#lx, %#lx, %#lx, %#lx.\n", head_surface, our_caps.
dwCaps,
863 TRACE(
"Surface %p, caps %#lx, %#lx, %#lx, %#lx.\n", surf,
878 TRACE(
"head_surface %p, returning surface %p.\n", head_surface, surf);
892 TRACE(
"Surface %p, caps %#lx, %#lx, %#lx, %#lx.\n", surf,
901 TRACE(
"head_surface %p, returning surface %p.\n", head_surface, surf);
909 TRACE(
"head_surface %p, didn't find a valid surface.\n", head_surface);
959 &caps2, &attachment7);
990 &caps2, &attachment7);
1013 TRACE(
"iface %p, caps %p, attachment %p.\n", iface, caps,
attachment);
1021 &caps2, &attachment7);
1056 unsigned int wined3d_flags;
1060 TRACE(
"surface %p, rect %s, surface_desc %p, surface_desc_size %u, flags %#lx, h %p.\n",
1081 WARN(
"Trying to lock an invalid rectangle, returning DDERR_INVALIDPARAMS\n");
1127 TRACE(
"locked surface returning description :\n");
1159 WARN(
"Invalid structure size %lu.\n",
desc->dwSize);
1167 unsigned int surface_desc_size;
1169 TRACE(
"iface %p, rect %s, surface_desc %p, flags %#lx, h %p.\n",
1177 WARN(
"Surface is lost.\n");
1188 unsigned int surface_desc_size;
1190 TRACE(
"iface %p, rect %s, surface_desc %p, flags %#lx, h %p.\n",
1198 WARN(
"Surface is lost.\n");
1208 unsigned int surface_desc_size;
1217 WARN(
"Surface is lost.\n");
1234 TRACE(
"iface %p, rect %s, surface_desc %p, flags %#lx, h %p.\n",
1245 TRACE(
"iface %p, rect %s, surface_desc %p, flags %#lx, h %p.\n",
1256 TRACE(
"iface %p, rect %s, surface_desc %p, flags %#lx, h %p.\n",
1269 TRACE(
"iface %p, data %p.\n", iface,
data);
1303 TRACE(
"iface %p, data %p.\n", iface,
data);
1312 TRACE(
"iface %p, data %p.\n", iface,
data);
1350 ERR(
"Invalid sub-resource index %u for surface %p.\n", dst_surface->
sub_resource_idx, dst_surface);
1381 struct ddraw_texture *dst_ddraw_texture, *src_ddraw_texture;
1386 void *texture_memory;
1389 TRACE(
"iface %p, src %p, flags %#lx.\n", iface,
src,
flags);
1402 WARN(
"Not in exclusive mode.\n");
1420 WARN(
"Surface %p is not on the same flip chain as surface %p.\n",
src, iface);
1427 WARN(
"Surface %p is not on the same flip chain as surface %p.\n",
src, iface);
1438 dst_ddraw_texture = src_ddraw_texture;
1446 ERR(
"Can't find a flip target\n");
1463 dst_ddraw_texture = src_ddraw_texture;
1464 dst_impl = src_impl;
1495 TRACE(
"iface %p, src %p, flags %#lx.\n", iface,
src,
flags);
1507 TRACE(
"iface %p, src %p, flags %#lx.\n", iface,
src,
flags);
1519 TRACE(
"iface %p, src %p, flags %#lx.\n", iface,
src,
flags);
1531 TRACE(
"iface %p, src %p, flags %#lx.\n", iface,
src,
flags);
1543 DWORD wined3d_flags;
1554 dst_surface->
palette, fill_colour, &colour))
1565 dst_rect, wined3d_flags, &colour, 0.0f, 0);
1575 dst_surface->
palette, fill_colour, &colour))
1581 dst_rect, wined3d_flags,
NULL, colour.
r, 0);
1584 wined3d_flags =
flags & ~DDBLT_ASYNC;
1604 RECT src_rect, dst_rect;
1605 float scale_x, scale_y;
1606 const RECT *clip_rect;
1607 DWORD clip_list_size;
1616 dst_rect = *dst_rect_in;
1627 src_rect = *src_rect_in;
1651 FIXME(
"Attempting to blit with an invalid clipper.\n");
1658 if (
FAILED(
hr = IDirectDrawClipper_GetClipList(&dst_surface->
clipper->IDirectDrawClipper_iface,
1659 &dst_rect,
NULL, &clip_list_size)))
1661 WARN(
"Failed to get clip list size, hr %#lx.\n",
hr);
1665 if (!(clip_list =
malloc(clip_list_size)))
1667 WARN(
"Failed to allocate clip list.\n");
1671 if (
FAILED(
hr = IDirectDrawClipper_GetClipList(&dst_surface->
clipper->IDirectDrawClipper_iface,
1672 &dst_rect, clip_list, &clip_list_size)))
1674 WARN(
"Failed to get clip list, hr %#lx.\n",
hr);
1682 RECT src_rect_clipped = src_rect;
1687 src_rect_clipped.
top += (
LONG)((clip_rect[
i].
top - dst_rect.
top) * scale_y);
1699 src_surface, &src_rect_clipped,
flags, fill_colour,
fx,
filter)))
1721 DWORD unsupported_flags;
1722 DWORD fill_colour = 0;
1726 TRACE(
"iface %p, dst_rect %s, src_surface %p, src_rect %s, flags %#lx, fx %p.\n",
1743 if (
flags & unsupported_flags)
1745 WARN(
"Ignoring unsupported flags %#lx.\n",
flags & unsupported_flags);
1746 flags &= ~unsupported_flags;
1751 WARN(
"Invalid source color key parameters, returning DDERR_INVALIDPARAMS\n");
1757 WARN(
"Invalid destination color key parameters, returning DDERR_INVALIDPARAMS\n");
1763 FIXME(
"DDBLT_DDROPS not implemented.\n");
1765 FIXME(
" rop %#lx, pattern %p.\n",
fx->dwDDROP,
fx->lpDDSPattern);
1776 WARN(
"DDBLT_ROP used with DDBLT_COLORFILL or DDBLT_DEPTHFILL, returning DDERR_INVALIDPARAMS.\n");
1782 WARN(
"Depth or colorfill is not compatible with source surfaces, returning DDERR_INVALIDPARAMS\n");
1788 WARN(
"Depth or colorfill used with NULL fx, returning DDERR_INVALIDPARAMS.\n");
1793 flags &= ~DDBLT_DEPTHFILL;
1798 WARN(
"DDBLT_COLORFILL used on a depth buffer, returning DDERR_INVALIDPARAMS.\n");
1804 WARN(
"DDBLT_DEPTHFILL used on a color buffer, returning DDERR_INVALIDPARAMS.\n");
1814 WARN(
"DDBLT_ROP used with NULL fx, returning DDERR_INVALIDPARAMS.\n");
1818 if (src_impl && src_rect
1823 WARN(
"Invalid source rectangle.\n");
1827 flags &= ~DDBLT_ROP;
1852 WARN(
"Unsupported ROP %#lx used, returning DDERR_NORASTEROPHW.\n",
fx->dwROP);
1859 WARN(
"No source surface.\n");
1866 WARN(
"DDBLT_KEYSRC blit without color key in surface, returning DDERR_INVALIDPARAMS\n");
1872 WARN(
"DDBLT_KEYDEST blit without color key in surface, returning DDERR_INVALIDPARAMS\n");
1879 wined3d_fx.
fx =
fx->dwDDFX;
1880 fill_colour =
fx->dwFillColor;
1881 wined3d_fx.
dst_color_key.color_space_low_value =
fx->ddckDestColorkey.dwColorSpaceLowValue;
1882 wined3d_fx.
dst_color_key.color_space_high_value =
fx->ddckDestColorkey.dwColorSpaceHighValue;
1883 wined3d_fx.
src_color_key.color_space_low_value =
fx->ddckSrcColorkey.dwColorSpaceLowValue;
1884 wined3d_fx.
src_color_key.color_space_high_value =
fx->ddckSrcColorkey.dwColorSpaceHighValue;
1904 TRACE(
"iface %p, dst_rect %s, src_surface %p, src_rect %s, flags %#lx, fx %p.\n",
1917 TRACE(
"iface %p, dst_rect %s, src_surface %p, src_rect %s, flags %#lx, fx %p.\n",
1930 TRACE(
"iface %p, dst_rect %s, src_surface %p, src_rect %s, flags %#lx, fx %p.\n",
1943 TRACE(
"iface %p, dst_rect %s, src_surface %p, src_rect %s, flags %#lx, fx %p.\n",
1998 TRACE(
"surface %p, attachment %p.\n",
This, Surf);
2011 WARN(
"Surface %p is already attached somewhere. next_attached %p, first_attached %p.\n",
2021 This->next_attached = Surf;
2046 WARN(
"Application tries to attach a non Z buffer surface. caps %#lx.\n",
2081 WARN(
"Surface sizes do not match.\n");
2088 WARN(
"Invalid attachment combination.\n");
2176 TRACE(
"surface %p, attachment %p, detach_iface %p.\n", surface,
attachment, detach_iface);
2185 if (
attachment->attached_iface != detach_iface)
2187 WARN(
"attachment->attach_iface %p != detach_iface %p.\n",
attachment->attached_iface, detach_iface);
2195 attachment->surface_desc.ddsCaps.dwCaps2 &= ~DDSCAPS2_MIPMAPSUBLEVEL;
2233 IUnknown_Release(detach_iface);
2366 TRACE(
"iface %p, dc %p.\n", iface,
dc);
2389 else if (surface->
ddraw->primary)
2417 TRACE(
"iface %p, dc %p.\n", iface,
dc);
2426 TRACE(
"iface %p, dc %p.\n", iface,
dc);
2435 TRACE(
"iface %p, dc %p.\n", iface,
dc);
2444 TRACE(
"iface %p, dc %p.\n", iface,
dc);
2466 TRACE(
"iface %p, dc %p.\n", iface,
hdc);
2490 TRACE(
"iface %p, dc %p.\n", iface,
dc);
2499 TRACE(
"iface %p, dc %p.\n", iface,
dc);
2508 TRACE(
"iface %p, dc %p.\n", iface,
dc);
2517 TRACE(
"iface %p, dc %p.\n", iface,
dc);
2539 TRACE(
"iface %p, caps %p.\n", iface, Caps);
2553 TRACE(
"iface %p, caps %p.\n", iface, caps);
2564 TRACE(
"iface %p, caps %p.\n", iface, caps);
2579 TRACE(
"iface %p, caps %p.\n", iface, caps);
2594 TRACE(
"iface %p, caps %p.\n", iface, caps);
2617 WARN(
"Called on non-managed texture returning DDERR_INVALIDPARAMS.\n");
2646 WARN(
"Called on offscreenplain surface, returning DDERR_INVALIDOBJECT.\n");
2651 WARN(
"Called on non-managed texture or non-root surface, returning DDERR_INVALIDPARAMS.\n");
2687 TRACE(
"iface %p, tag %s, data %p, data_size %lu, flags %#lx.\n",
2692 WARN(
"data is NULL, returning DDERR_INVALIDPARAMS.\n");
2707 TRACE(
"iface %p, tag %s, data %p, data_size %lu, flags %#lx.\n",
2734 TRACE(
"iface %p, tag %s, data %p, data_size %p.\n",
2749 if (*size < stored_data->
size)
2774 TRACE(
"iface %p, tag %s, data %p, data_size %p.\n",
2836 TRACE(
"iface %p, flags %#lx.\n", iface,
Flags);
2846 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
2855 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
2864 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
2883 TRACE(
"iface %p, flags %#lx.\n", iface,
Flags);
2892 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
2901 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
2910 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
2939 TRACE(
"iface %p, batch %p, count %lu, flags %#lx.\n", iface, batch,
count,
flags);
2948 TRACE(
"iface %p, batch %p, count %lu, flags %#lx.\n", iface, batch,
count,
flags);
2957 TRACE(
"iface %p, batch %p, count %lu, flags %#lx.\n", iface, batch,
count,
flags);
2966 TRACE(
"iface %p, batch %p, count %lu, flags %#lx.\n", iface, batch,
count,
flags);
2994 TRACE(
"iface %p, context %p, callback %p.\n", iface,
context,
cb);
3028 TRACE(
" end of enumeration.\n");
3148 FIXME(
"iface %p, flags %#lx, context %p, callback %p stub!\n", iface,
Flags,
context,
cb);
3224 TRACE(
"iface %p, flags %#lx.\n", iface,
Flags);
3241 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
3250 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
3259 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
3268 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
3291 TRACE(
"iface %p, flags %#lx, color_key %p.\n", iface,
Flags, CKey);
3306 *CKey =
This->surface_desc.ddckCKDestBlt;
3315 *CKey =
This->surface_desc.ddckCKDestOverlay;
3324 *CKey =
This->surface_desc.ddckCKSrcBlt;
3333 *CKey =
This->surface_desc.ddckCKSrcOverlay;
3393 TRACE(
"iface %p, flags %#lx.\n", iface,
Flags);
3412 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
3421 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
3430 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
3439 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
3461 TRACE(
"iface %p, x %p, y %p.\n", iface,
x,
y);
3475 TRACE(
"iface %p, x %p, y %p.\n", iface,
x,
y);
3484 TRACE(
"iface %p, x %p, y %p.\n", iface,
x,
y);
3493 TRACE(
"iface %p, x %p, y %p.\n", iface,
x,
y);
3502 TRACE(
"iface %p, x %p, y %p.\n", iface,
x,
y);
3604 TRACE(
"Returning surface desc:\n");
3615 TRACE(
"iface %p, surface_desc %p.\n", iface, DDSD);
3636 TRACE(
"Returning surface desc:\n");
3651 TRACE(
"iface %p, surface_desc %p.\n", iface, DDSD);
3660 TRACE(
"iface %p, surface_desc %p.\n", iface, DDSD);
3749 IDirect3DDevice *
device, IDirectDrawSurface *surface)
3751 TRACE(
"iface %p, device %p, surface %p.\n", iface,
device, surface);
3770 TRACE(
"iface %p.\n", iface);
3779 TRACE(
"iface %p.\n", iface);
3788 TRACE(
"iface %p.\n", iface);
3797 TRACE(
"iface %p.\n", iface);
3806 TRACE(
"iface %p.\n", iface);
3827 TRACE(
"iface %p.\n", iface);
3838 WARN(
"Failed to get display mode, hr %#lx.\n",
hr);
3844 WARN(
"Failed to get resource desc, hr %#lx.\n",
hr);
3850 WARN(
"Display mode dimensions %ux%u don't match surface dimensions %ux%u.\n",
3857 WARN(
"Display mode format %#x doesn't match surface format %#x.\n",
3890 TRACE(
"iface %p.\n", iface);
3899 TRACE(
"iface %p.\n", iface);
3908 TRACE(
"iface %p.\n", iface);
3917 TRACE(
"iface %p.\n", iface);
3939 TRACE(
"iface %p, x %ld, y %ld.\n", iface,
x,
y);
3953 TRACE(
"iface %p, x %ld, y %ld.\n", iface,
x,
y);
3962 TRACE(
"iface %p, x %ld, y %ld.\n", iface,
x,
y);
3971 TRACE(
"iface %p, x %ld, y %ld.\n", iface,
x,
y);
3980 TRACE(
"iface %p, x %ld, y %ld.\n", iface,
x,
y);
4006 unsigned int dst_sub_resource_idx = 0;
4009 TRACE(
"iface %p, src_rect %s, dst_surface %p, dst_rect %s, flags %#lx, fx %p.\n",
4013 FIXME(
"Ignoring fx %p.\n",
fx);
4022 src_rect, dst_wined3d_texture, dst_sub_resource_idx, dst_rect,
flags);
4034 TRACE(
"iface %p, src_rect %s, dst_surface %p, dst_rect %s, flags %#lx, fx %p.\n",
4047 TRACE(
"iface %p, src_rect %s, dst_surface %p, dst_rect %s, flags %#lx, fx %p.\n",
4060 TRACE(
"iface %p, src_rect %s, dst_surface %p, dst_rect %s, flags %#lx, fx %p.\n",
4073 TRACE(
"iface %p, src_rect %s, dst_surface %p, dst_rect %s, flags %#lx, fx %p.\n",
4093 TRACE(
"iface %p, flags %#lx.\n", iface,
Flags);
4102 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
4111 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
4120 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
4129 TRACE(
"iface %p, flags %#lx.\n", iface,
flags);
4157 WARN(
"Not an overlay surface.\n");
4232 TRACE(
"iface %p, ddraw %p.\n", iface,
DD);
4237 switch(
This->version)
4240 *
DD = &
This->ddraw->IDirectDraw7_iface;
4244 *
DD = &
This->ddraw->IDirectDraw4_iface;
4248 *
DD = &
This->ddraw->IDirectDraw2_iface;
4252 *
DD = &
This->ddraw->IDirectDraw_iface;
4265 TRACE(
"iface %p, ddraw %p.\n", iface,
ddraw);
4274 TRACE(
"iface %p, ddraw %p.\n", iface,
ddraw);
4283 TRACE(
"iface %p, ddraw %p.\n", iface,
ddraw);
4290 TRACE(
"iface %p.\n", iface);
4299 TRACE(
"iface %p.\n", iface);
4340 TRACE(
"iface %p, lod %lu.\n", iface, MaxLOD);
4381 TRACE(
"iface %p, lod %p.\n", iface, MaxLOD);
4421 DWORD src_w, src_h, dst_w, dst_h;
4425 TRACE(
"iface %p, dst_x %lu, dst_y %lu, src_surface %p, src_rect %s, flags %#lx.\n",
4437 src_w = src_rect->
right - src_rect->
left;
4438 src_h = src_rect->
bottom - src_rect->
top;
4439 if (src_w > dst_w || dst_x > dst_w - src_w
4440 || src_h > dst_h || dst_y > dst_h - src_h)
4442 WARN(
"Destination area out of bounds, returning DDERR_INVALIDRECT.\n");
4446 SetRect(&dst_rect, dst_x, dst_y, dst_x + src_w, dst_y + src_h);
4460 WARN(
"Destination surface has a clipper set, returning DDERR_BLTFASTCANTCLIP.\n");
4488 TRACE(
"iface %p, dst_x %lu, dst_y %lu, src_surface %p, src_rect %s, flags %#lx.\n",
4501 TRACE(
"iface %p, dst_x %lu, dst_y %lu, src_surface %p, src_rect %s, flags %#lx.\n",
4514 TRACE(
"iface %p, dst_x %lu, dst_y %lu, src_surface %p, src_rect %s, flags %#lx.\n",
4527 TRACE(
"iface %p, dst_x %lu, dst_y %lu, src_surface %p, src_rect %s, flags %#lx.\n",
4553 IDirectDrawClipper_AddRef(*
clipper);
4608 IDirectDrawClipper *iclipper)
4615 TRACE(
"iface %p, clipper %p.\n", iface, iclipper);
4618 if (clipper ==
This->clipper)
4624 This->clipper = clipper;
4626 if (clipper !=
NULL)
4627 IDirectDrawClipper_AddRef(iclipper);
4635 IDirectDrawClipper_GetHWnd(iclipper, &clipWindow);
4738 TRACE(
"iface %p, surface_desc %p, flags %#lx.\n", iface, DDSD,
Flags);
4742 WARN(
"DDSD is NULL, returning DDERR_INVALIDPARAMS\n");
4747 WARN(
"Flags is %lx, returning DDERR_INVALIDPARAMS\n",
Flags);
4754 WARN(
"Surface is not in system memory, returning DDERR_INVALIDSURFACETYPE.\n");
4758 if (DDSD->
dwFlags & ~allowed_flags)
4760 WARN(
"Invalid flags %#lx set, returning DDERR_INVALIDPARAMS\n", DDSD->
dwFlags);
4765 WARN(
"DDSD_LPSURFACE is not set or lpSurface is NULL, returning DDERR_INVALIDPARAMS\n");
4770 WARN(
"DDSD_CAPS is set, returning DDERR_INVALIDCAPS.\n");
4777 WARN(
"DDSD_WIDTH is set, but DDSD_PITCH is not, returning DDERR_INVALIDPARAMS.\n");
4782 WARN(
"Pitch is %ld, width is %lu, returning DDERR_INVALIDPARAMS.\n",
4795 WARN(
"DDSD_PITCH is set, but DDSD_WIDTH is not, returning DDERR_INVALIDPARAMS.\n");
4808 WARN(
"Height is 0, returning DDERR_INVALIDPARAMS.\n");
4827 ERR(
"Requested to set an unknown pixelformat\n");
4833 TRACE(
"Surface format changed from %#x to %#x.\n", current_format_id,
format_id);
4848 WARN(
"Failed to update surface desc, hr %#lx.\n",
hr);
4868 FIXME(
"Texture has multiple sub-resources, not supported.\n");
4884 ERR(
"Failed to create texture, hr %#lx.\n",
hr);
4891 ERR(
"Failed to set user memory, hr %#lx.\n",
hr);
4897 if (old_draw_texture)
4908 ERR(
"Failed to create draw texture, hr %#lx.\n",
hr);
4963 if (old_rtv == current_rtv)
5033 WARN(
"Surface lost, returning DDERR_SURFACELOST.\n");
5038 if ((palette_impl = surface->
palette))
5041 IDirectDrawPalette_AddRef(*
palette);
5098 WARN(
"Range color keys are not supported, returning DDERR_NOCOLORKEYHW.\n");
5101 flags &= ~DDCKEY_COLORSPACE;
5108 fixed_color_key.dwColorSpaceLowValue = fixed_color_key.dwColorSpaceHighValue =
color_key->dwColorSpaceLowValue;
5229 WARN(
"Surface lost, returning DDERR_SURFACELOST.\n");
5244 WARN(
"Surface lost, returning DDERR_SURFACELOST.\n");
5259 WARN(
"Surface lost, returning DDERR_SURFACELOST.\n");
5274 WARN(
"Surface lost, returning DDERR_SURFACELOST.\n");
5289 WARN(
"Surface lost, returning DDERR_SURFACELOST.\n");
5315 TRACE(
"iface %p, flags %#lx, gamma_ramp %p.\n", iface,
flags, gamma_ramp);
5319 WARN(
"Invalid gamma_ramp passed.\n");
5331 ERR(
"Not implemented for non-primary surfaces.\n");
5357 TRACE(
"iface %p, flags %#lx, gamma_ramp %p.\n", iface,
flags, gamma_ramp);
5361 WARN(
"Invalid gamma_ramp passed.\n");
5374 ERR(
"Not implemented for non-primary surfaces.\n");
5422 WARN(
"iface %p. Not implemented.\n", iface);
5454 ERR(
"Failed to allocate a texture handle.\n");
5462 TRACE(
"Returning handle %08lx.\n", surface->
Handle);
5529 TRACE(
"iface %p, src_texture %p.\n", iface, src_texture);
5531 if (src_surface == dst_surface)
5533 TRACE(
"copying surface %p to surface %p, why?\n", src_surface, dst_surface);
5546 ERR(
"Trying to load surfaces with different mip-map counts.\n");
5554 TRACE(
"Copying surface %p to surface %p.\n", src_surface, dst_surface);
5560 dst_pal = dst_surface->
palette;
5561 src_pal = src_surface->
palette;
5580 if ((src_desc->dwWidth != dst_desc->dwWidth) || (src_desc->dwHeight != dst_desc->dwHeight))
5583 ERR(
"Error in surface sizes.\n");
5602 ERR(
"Failed to lock source surface, hr %#lx.\n",
hr);
5610 ERR(
"Failed to lock destination surface, hr %#lx.\n",
hr);
5635 if (!src_surface || !dst_surface)
5637 if (src_surface != dst_surface)
5638 ERR(
"Loading surface with different mipmap structure.\n");
5653 TRACE(
"iface %p, src_texture %p.\n", iface, src_texture);
5952 if (!iface)
return NULL;
5955 HRESULT hr = IDirectDrawSurface7_QueryInterface(iface, &IID_IDirectDrawSurface7, (
void **)&iface);
5958 WARN(
"Object %p doesn't expose interface IDirectDrawSurface7.\n", iface);
5961 IDirectDrawSurface7_Release(iface);
5968 if (!iface)
return NULL;
5971 HRESULT hr = IDirectDrawSurface4_QueryInterface(iface, &IID_IDirectDrawSurface4, (
void **)&iface);
5974 WARN(
"Object %p doesn't expose interface IDirectDrawSurface4.\n", iface);
5977 IDirectDrawSurface4_Release(iface);
5984 if (!iface)
return NULL;
5987 HRESULT hr = IDirectDrawSurface3_QueryInterface(iface, &IID_IDirectDrawSurface3, (
void **)&iface);
5990 WARN(
"Object %p doesn't expose interface IDirectDrawSurface3.\n", iface);
5993 IDirectDrawSurface3_Release(iface);
6000 if (!iface)
return NULL;
6003 HRESULT hr = IDirectDrawSurface2_QueryInterface(iface, &IID_IDirectDrawSurface2, (
void **)&iface);
6006 WARN(
"Object %p doesn't expose interface IDirectDrawSurface2.\n", iface);
6009 IDirectDrawSurface2_Release(iface);
6016 if (!iface)
return NULL;
6019 HRESULT hr = IDirectDrawSurface_QueryInterface(iface, &IID_IDirectDrawSurface, (
void **)&iface);
6022 WARN(
"Object %p doesn't expose interface IDirectDrawSurface.\n", iface);
6025 IDirectDrawSurface_Release(iface);
6032 if (!iface)
return NULL;
6039 if (!iface)
return NULL;
6048 TRACE(
"surface %p.\n", surface);
6058 ERR(
"DeleteAttachedSurface failed.\n");
6068 IDirectDrawClipper_Release(&surface->
clipper->IDirectDrawClipper_iface);
6070 if (surface == surface->
ddraw->primary)
6153 unsigned int sub_resource_count)
6155 static const unsigned int extra_size = 0x10000;
6160 unsigned int pitch, slice_pitch;
6167 ERR(
"Out of memory.\n");
6170 TRACE(
"texture->texture_memory %p.\n",
texture->texture_memory);
6173 for (
i = 0;
i < sub_resource_count; ++
i)
6177 ERR(
"Subresource %u not found.\n",
i);
6199 const DWORD caps =
desc->ddsCaps.dwCaps;
6200 const DWORD caps2 =
desc->ddsCaps.dwCaps2;
6211 wined3d_desc->
depth = 1;
6212 wined3d_desc->
size = 0;
6253 unsigned int layers,
unsigned int levels,
bool sysmem_fallback,
bool reserve_memory)
6261 unsigned int draw_bind_flags;
6262 unsigned int pitch = 0;
6270 WARN(
"Unsupported / unknown pixelformat.\n");
6283 WARN(
"Invalid linear size %lu specified.\n",
desc->dwLinearSize);
6292 WARN(
"Invalid pitch %lu specified.\n",
desc->lPitch);
6296 pitch =
desc->lPitch;
6305 wined3d_desc.
bind_flags &= ~WINED3D_BIND_RENDER_TARGET;
6307 if (draw_bind_flags && (wined3d_desc.
bind_flags != draw_bind_flags))
6311 draw_texture_desc = wined3d_desc;
6312 draw_texture_desc.
bind_flags = draw_bind_flags;
6314 draw_texture_desc.
usage = 0;
6318 WARN(
"Failed to create draw texture, hr %#lx.\n",
hr);
6357 wined3d_desc.
bind_flags &= ~WINED3D_BIND_SHADER_RESOURCE;
6368 ERR(
"Failed to set surface memory, hr %#lx.\n",
hr);
6372 for (
i = 0;
i < layers; ++
i)
6379 unsigned int sub_resource_idx =
i *
levels +
j;
6380 unsigned int row_pitch, slice_pitch;
6384 if (!(mip =
calloc(1,
sizeof(*mip))))
6419 mip_desc->
dwFlags &= ~DDSD_PITCH;
6424 mip_desc->
lPitch = row_pitch;
6426 mip_desc->
dwFlags &= ~DDSD_LINEARSIZE;
6429 mip_desc->
dwFlags &= ~DDSD_LPSURFACE;
6479 TRACE(
"Created ddraw surface %p.\n", mip);
6488 else if (
j == 1 && !
i)
6526 IDirectDrawSurface7_Release(&
parent->IDirectDrawSurface7_iface);
6527 else if (
texture->version == 4)
6528 IDirectDrawSurface4_Release(&
parent->IDirectDrawSurface4_iface);
6530 IDirectDrawSurface_Release(&
parent->IDirectDrawSurface_iface);
6543 unsigned int layers = 1;
6545 bool reserve_memory;
6549 TRACE(
"ddraw %p, surface_desc %p, surface %p, outer_unknown %p, version %u.\n",
6553 TRACE(
"Requesting surface desc:\n");
6578 WARN(
"DDSCAPS_COMPLEX specified for a surface which is neither flippable, mipmapped, nor a cubemap.\n");
6586 WARN(
"DDSD_MIPMAPCOUNT specified without DDSCAPS_COMPLEX.\n");
6595 WARN(
"Tried to create a flippable surface without any back buffers.\n");
6602 WARN(
"Tried to create a flippable surface without DDSCAPS_COMPLEX.\n");
6609 WARN(
"Tried to create a flippable cubemap.\n");
6616 FIXME(
"Flippable textures not implemented.\n");
6625 WARN(
"Tried to specify a back buffer count for a non-flippable surface.\n");
6636 WARN(
"Tried to create a primary surface with DDSCAPS_TEXTURE.\n");
6643 WARN(
"Tried to create a flippable primary surface without both DDSCAPS_FLIP and DDSCAPS_COMPLEX.\n");
6650 WARN(
"Tried to create a flippable primary surface without DDSCL_EXCLUSIVE.\n");
6660 WARN(
"Tried to create a surface in both system and video memory.\n");
6668 WARN(
"Caps %#lx require DDSCAPS_TEXTURE.\n",
desc->ddsCaps.dwCaps);
6676 WARN(
"Cube map faces requested without cube map flag.\n");
6684 WARN(
"Cube map without faces requested.\n");
6691 FIXME(
"Partial cube maps not implemented.\n");
6697 WARN(
"DDSCAPS2_TEXTUREMANAGE used without DDSCAPS_TEXTURE, returning DDERR_INVALIDCAPS.\n");
6703 WARN(
"DDSCAPS2_TEXTUREMANAGE used with DDSCAPS_VIDEOMEMORY "
6704 "or DDSCAPS_SYSTEMMEMORY, returning DDERR_INVALIDCAPS.\n");
6713 WARN(
"DDSCAPS_WRITEONLY used without DDSCAPS2_TEXTUREMANAGE, returning DDERR_INVALIDCAPS.\n");
6720 ERR(
"Failed to get display mode, hr %#lx.\n",
hr);
6725 wined3d_display_mode_format.
dwSize =
sizeof(wined3d_display_mode_format);
6732 desc->ddpfPixelFormat = wined3d_display_mode_format;
6740 WARN(
"No width / height specified.\n");
6750 if (!
desc->dwWidth || !
desc->dwHeight)
6776 ERR(
"Failed to reset device.\n");
6785 WARN(
"The application requests a 3D capable surface, but the ddraw object was created without 3D support.\n");
6797 if (!
desc->dwMipMapCount)
6815 desc->dwMipMapCount = 1;
6830 unsigned int bind_flags = 0;
6857 sysmem_fallback =
TRUE;
6871 WARN(
"System memory overlays are not allowed.\n");
6886 WARN(
"User memory surfaces should not be GPU accessible.\n");
6893 WARN(
"User memory surfaces not supported before version 4.\n");
6898 if (!
desc->lpSurface)
6900 WARN(
"NULL surface memory pointer specified.\n");
6909 WARN(
"Pitch specified on a compressed user memory surface.\n");
6916 WARN(
"Compressed user memory surfaces should explicitly specify the linear size.\n");
6925 WARN(
"User memory surfaces should explicitly specify the pitch.\n");
6933 &&
desc->ddckCKDestOverlay.dwColorSpaceLowValue !=
desc->ddckCKDestOverlay.dwColorSpaceHighValue)
6935 &&
desc->ddckCKDestBlt.dwColorSpaceLowValue !=
desc->ddckCKDestBlt.dwColorSpaceHighValue)
6937 &&
desc->ddckCKSrcOverlay.dwColorSpaceLowValue !=
desc->ddckCKSrcOverlay.dwColorSpaceHighValue)
6939 &&
desc->ddckCKSrcBlt.dwColorSpaceLowValue !=
desc->ddckCKSrcBlt.dwColorSpaceHighValue))
6941 WARN(
"Range color keys not supported, returning DDERR_NOCOLORKEYHW.\n");
6948 WARN(
"Video memory surfaces not supported without 3D support.\n");
6962 WARN(
"Failed to create wined3d texture, hr %#lx.\n",
hr);
6972 unsigned int count =
desc->dwBackBufferCount;
6975 attach = &
last->complex_array[0];
6995 desc->dwBackBufferCount = 0;
7007 attach = &
last->complex_array[0];
7023 IDirectDrawSurface7_Release(&
root->IDirectDrawSurface7_iface);
7025 IDirectDrawSurface4_Release(&
root->IDirectDrawSurface4_iface);
7027 IDirectDrawSurface_Release(&
root->IDirectDrawSurface_iface);
7065 ERR(
"Failed to create rendertarget view, hr %#lx.\n",
hr);
#define DECLSPEC_HOTPATCH
#define InterlockedIncrement
#define InterlockedDecrement
static const char * wine_dbgstr_rect(const RECT *prc)
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static void list_remove(struct list_entry *entry)
static void list_add_head(struct list_entry *head, struct list_entry *entry)
#define STDMETHODCALLTYPE
HRESULT CDECL wined3d_device_context_clear_sysmem_texture(struct wined3d_device_context *context, struct wined3d_texture *texture, unsigned int sub_resource_idx, const RECT *rect, unsigned int flags, const struct wined3d_color *color)
#define IDirect3DDevice_AddRef(p)
#define D3DERR_TEXTURE_LOAD_FAILED
#define IDirect3DTexture2_AddRef(p)
#define DDRAW_SURFACE_WRITE
static struct wined3d_texture * ddraw_surface_get_any_texture(struct ddraw_surface *surface, unsigned int flags)
enum wined3d_format_id wined3dformat_from_ddrawformat(const DDPIXELFORMAT *format)
void * ddraw_free_handle(struct ddraw_handle_table *t, DWORD handle, enum ddraw_handle_type type)
unsigned int wined3dmapflags_from_ddrawmapflags(unsigned int flags)
static struct wined3d_texture * ddraw_surface_get_default_texture(struct ddraw_surface *surface, unsigned int flags)
static struct ddraw_surface * impl_from_IDirectDrawSurface3(IDirectDrawSurface3 *iface)
static struct ddraw_surface * impl_from_IDirectDrawSurface4(IDirectDrawSurface4 *iface)
@ DDRAW_DEVICE_STATE_LOST
void DDSD_to_DDSD2(const DDSURFACEDESC *in, DDSURFACEDESC2 *out)
#define DDRAW_RESTORE_MODE
void DDSD2_to_DDSD(const DDSURFACEDESC2 *in, DDSURFACEDESC *out)
static struct ddraw_surface * impl_from_IDirectDrawSurface(IDirectDrawSurface *iface)
struct d3d_device * unsafe_impl_from_IDirect3DDevice(IDirect3DDevice *iface)
static BOOL format_is_compressed(const DDPIXELFORMAT *format)
#define MAX_COMPLEX_ATTACHED
enum wined3d_depth_buffer_type d3d_device_update_depth_stencil(struct d3d_device *device)
struct ddraw_palette * unsafe_impl_from_IDirectDrawPalette(IDirectDrawPalette *iface)
static struct ddraw_surface * impl_from_IDirectDrawSurface2(IDirectDrawSurface2 *iface)
HRESULT hr_ddraw_from_wined3d(HRESULT hr)
#define DD_STRUCT_COPY_BYSIZE_(to, from, to_size, from_size)
void DDRAW_dump_surface_desc(const DDSURFACEDESC2 *lpddsd)
static BOOL format_is_paletteindexed(const DDPIXELFORMAT *fmt)
#define DDRAW_SURFACE_LOCATION_DEFAULT
static void ddraw_set_swapchain_window(struct ddraw *ddraw, HWND window)
static struct ddraw_surface * impl_from_IDirect3DTexture2(IDirect3DTexture2 *iface)
#define DDRAW_SURFACE_READ
#define DDRAW_INVALID_HANDLE
#define DD_STRUCT_COPY_BYSIZE(to, from)
DWORD ddraw_allocate_handle(struct ddraw_handle_table *t, void *object, enum ddraw_handle_type type)
static struct wined3d_texture * ddraw_surface_get_draw_texture(struct ddraw_surface *surface, unsigned int flags)
void ddrawformat_from_wined3dformat(DDPIXELFORMAT *ddraw_format, enum wined3d_format_id wined3d_format)
static BOOL ddraw_surface_can_be_lost(const struct ddraw_surface *surface)
static struct ddraw_surface * impl_from_IDirectDrawSurface7(IDirectDrawSurface7 *iface)
HRESULT d3d_device_create(struct ddraw *ddraw, const GUID *guid, struct ddraw_surface *target, IUnknown *rt_iface, UINT version, struct d3d_device **device, IUnknown *outer_unknown)
BOOL wined3d_colour_from_ddraw_colour(const DDPIXELFORMAT *pf, const struct ddraw_palette *palette, DWORD colour, struct wined3d_color *wined3d_colour)
static struct ddraw_surface * impl_from_IDirect3DTexture(IDirect3DTexture *iface)
const GUID IID_D3DDEVICE_WineD3D
BOOL ddraw_clipper_is_valid(const struct ddraw_clipper *clipper)
struct ddraw_clipper * unsafe_impl_from_IDirectDrawClipper(IDirectDrawClipper *iface)
_In_ D3DDDI_VIDEO_PRESENT_TARGET_ID _In_ ULONG _In_ ULONG Flags
static void STDMETHODCALLTYPE view_wined3d_object_destroyed(void *parent)
void ddraw_update_lost_surfaces(struct ddraw *ddraw)
const struct wined3d_parent_ops ddraw_null_wined3d_parent_ops
static struct ddraw_surface * unsafe_impl_from_IDirectDrawSurface2(IDirectDrawSurface2 *iface)
static HRESULT WINAPI ddraw_surface2_SetOverlayPosition(IDirectDrawSurface2 *iface, LONG x, LONG y)
static ULONG WINAPI ddraw_surface4_AddRef(IDirectDrawSurface4 *iface)
static HRESULT ddraw_surface_delete_attached_surface(struct ddraw_surface *surface, struct ddraw_surface *attachment, IUnknown *detach_iface)
static HRESULT WINAPI ddraw_surface3_PageUnlock(IDirectDrawSurface3 *iface, DWORD flags)
static HRESULT WINAPI ddraw_surface2_UpdateOverlay(IDirectDrawSurface2 *iface, RECT *src_rect, IDirectDrawSurface2 *dst_surface, RECT *dst_rect, DWORD flags, DDOVERLAYFX *fx)
static HRESULT WINAPI ddraw_surface2_QueryInterface(IDirectDrawSurface2 *iface, REFIID riid, void **object)
static const struct IDirect3DTexture2Vtbl d3d_texture2_vtbl
static BOOL ddraw_gdi_is_front(struct ddraw *ddraw)
static HRESULT WINAPI ddraw_surface1_EnumOverlayZOrders(IDirectDrawSurface *iface, DWORD flags, void *context, LPDDENUMSURFACESCALLBACK callback)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface7_Blt(IDirectDrawSurface7 *iface, RECT *dst_rect, IDirectDrawSurface7 *src_surface, RECT *src_rect, DWORD flags, DDBLTFX *fx)
static HRESULT WINAPI ddraw_surface1_EnumAttachedSurfaces(IDirectDrawSurface *iface, void *context, LPDDENUMSURFACESCALLBACK callback)
static HRESULT WINAPI ddraw_surface1_Initialize(IDirectDrawSurface *iface, IDirectDraw *ddraw, DDSURFACEDESC *surface_desc)
static HRESULT WINAPI ddraw_surface3_GetDC(IDirectDrawSurface3 *iface, HDC *dc)
static HRESULT ddraw_surface_set_wined3d_textures_colour_key(struct ddraw_surface *surface, DWORD flags, struct wined3d_color_key *color_key)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface2_Unlock(IDirectDrawSurface2 *iface, void *data)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface2_BltFast(IDirectDrawSurface2 *iface, DWORD dst_x, DWORD dst_y, IDirectDrawSurface2 *src_surface, RECT *src_rect, DWORD flags)
static unsigned int ddraw_swap_interval_from_flags(DWORD flags)
static HRESULT WINAPI ddraw_surface4_Lock(IDirectDrawSurface4 *iface, RECT *rect, DDSURFACEDESC2 *surface_desc, DWORD flags, HANDLE h)
static void wined3d_resource_desc_from_ddraw(struct ddraw *ddraw, struct wined3d_resource_desc *wined3d_desc, const DDSURFACEDESC2 *desc)
static HRESULT WINAPI ddraw_surface4_GetClipper(IDirectDrawSurface4 *iface, IDirectDrawClipper **clipper)
static HRESULT WINAPI ddraw_surface2_DeleteAttachedSurface(IDirectDrawSurface2 *iface, DWORD flags, IDirectDrawSurface2 *attachment)
static HRESULT WINAPI ddraw_surface4_SetSurfaceDesc(IDirectDrawSurface4 *iface, DDSURFACEDESC2 *surface_desc, DWORD flags)
static HRESULT WINAPI ddraw_surface7_AddOverlayDirtyRect(IDirectDrawSurface7 *iface, RECT *Rect)
static HRESULT WINAPI ddraw_surface1_UpdateOverlay(IDirectDrawSurface *iface, RECT *src_rect, IDirectDrawSurface *dst_surface, RECT *dst_rect, DWORD flags, DDOVERLAYFX *fx)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface1_Blt(IDirectDrawSurface *iface, RECT *dst_rect, IDirectDrawSurface *src_surface, RECT *src_rect, DWORD flags, DDBLTFX *fx)
static HRESULT WINAPI ddraw_surface4_IsLost(IDirectDrawSurface4 *iface)
static HRESULT WINAPI d3d_texture1_Initialize(IDirect3DTexture *iface, IDirect3DDevice *device, IDirectDrawSurface *surface)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface7_BltBatch(IDirectDrawSurface7 *iface, DDBLTBATCH *Batch, DWORD Count, DWORD Flags)
static HRESULT WINAPI ddraw_surface7_Lock(IDirectDrawSurface7 *iface, RECT *rect, DDSURFACEDESC2 *surface_desc, DWORD flags, HANDLE h)
static struct ddraw_surface * impl_from_IDirectDrawGammaControl(IDirectDrawGammaControl *iface)
static HRESULT WINAPI ddraw_surface4_QueryInterface(IDirectDrawSurface4 *iface, REFIID riid, void **object)
static HRESULT WINAPI ddraw_surface2_EnumOverlayZOrders(IDirectDrawSurface2 *iface, DWORD flags, void *context, LPDDENUMSURFACESCALLBACK callback)
static HRESULT WINAPI ddraw_surface7_UpdateOverlay(IDirectDrawSurface7 *iface, RECT *src_rect, IDirectDrawSurface7 *dst_surface, RECT *dst_rect, DWORD flags, DDOVERLAYFX *fx)
static HRESULT WINAPI ddraw_surface1_DeleteAttachedSurface(IDirectDrawSurface *iface, DWORD flags, IDirectDrawSurface *attachment)
static HRESULT WINAPI ddraw_surface3_Lock(IDirectDrawSurface3 *iface, RECT *rect, DDSURFACEDESC *surface_desc, DWORD flags, HANDLE h)
static HRESULT WINAPI ddraw_surface1_SetClipper(IDirectDrawSurface *iface, IDirectDrawClipper *clipper)
static ULONG WINAPI ddraw_surface4_Release(IDirectDrawSurface4 *iface)
static HRESULT WINAPI ddraw_surface7_PageUnlock(IDirectDrawSurface7 *iface, DWORD Flags)
static HRESULT WINAPI ddraw_surface4_UpdateOverlayZOrder(IDirectDrawSurface4 *iface, DWORD flags, IDirectDrawSurface4 *reference)
static HRESULT WINAPI ddraw_surface4_AddAttachedSurface(IDirectDrawSurface4 *iface, IDirectDrawSurface4 *attachment)
struct ddraw_surface * unsafe_impl_from_IDirectDrawSurface4(IDirectDrawSurface4 *iface)
static HRESULT WINAPI ddraw_surface2_IsLost(IDirectDrawSurface2 *iface)
static HRESULT WINAPI ddraw_surface1_SetColorKey(IDirectDrawSurface *iface, DWORD flags, DDCOLORKEY *color_key)
static HRESULT WINAPI ddraw_surface2_Restore(IDirectDrawSurface2 *iface)
static const struct IDirectDrawGammaControlVtbl ddraw_gamma_control_vtbl
static HRESULT WINAPI ddraw_surface7_SetPriority(IDirectDrawSurface7 *iface, DWORD priority)
static HRESULT WINAPI ddraw_surface4_SetOverlayPosition(IDirectDrawSurface4 *iface, LONG x, LONG y)
HRESULT ddraw_surface_update_frontbuffer(struct ddraw_surface *surface, const RECT *rect, BOOL read, unsigned int swap_interval)
static HRESULT WINAPI d3d_texture2_Load(IDirect3DTexture2 *iface, IDirect3DTexture2 *src_texture)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface3_Blt(IDirectDrawSurface3 *iface, RECT *dst_rect, IDirectDrawSurface3 *src_surface, RECT *src_rect, DWORD flags, DDBLTFX *fx)
static void ddraw_texture_rename_to(struct ddraw_texture *dst_texture, struct wined3d_texture *wined3d_texture, struct wined3d_texture *draw_texture, struct wined3d_rendertarget_view *rtv, void *texture_memory, struct wined3d_rendertarget_view *current_rtv)
static HRESULT WINAPI ddraw_surface4_PageLock(IDirectDrawSurface4 *iface, DWORD flags)
static HRESULT WINAPI ddraw_surface4_UpdateOverlayDisplay(IDirectDrawSurface4 *iface, DWORD flags)
static HRESULT WINAPI ddraw_surface7_DeleteAttachedSurface(IDirectDrawSurface7 *iface, DWORD flags, IDirectDrawSurface7 *attachment)
static HRESULT WINAPI ddraw_surface3_SetClipper(IDirectDrawSurface3 *iface, IDirectDrawClipper *clipper)
static HRESULT WINAPI ddraw_surface2_GetClipper(IDirectDrawSurface2 *iface, IDirectDrawClipper **clipper)
static HRESULT WINAPI ddraw_surface1_GetClipper(IDirectDrawSurface *iface, IDirectDrawClipper **clipper)
static ULONG WINAPI ddraw_surface1_Release(IDirectDrawSurface *iface)
static HRESULT WINAPI ddraw_surface2_PageLock(IDirectDrawSurface2 *iface, DWORD flags)
static struct IDirectDrawSurface4Vtbl ddraw_surface4_vtbl
static HRESULT WINAPI ddraw_surface4_GetCaps(IDirectDrawSurface4 *iface, DDSCAPS2 *caps)
static const struct wined3d_parent_ops ddraw_texture_wined3d_parent_ops
static ULONG WINAPI ddraw_gamma_control_Release(IDirectDrawGammaControl *iface)
static ULONG ddraw_surface_release_iface(struct ddraw_surface *This)
static HRESULT WINAPI ddraw_surface1_GetSurfaceDesc(IDirectDrawSurface *iface, DDSURFACEDESC *DDSD)
static HRESULT WINAPI ddraw_surface3_UpdateOverlayDisplay(IDirectDrawSurface3 *iface, DWORD flags)
static HRESULT WINAPI ddraw_surface7_ReleaseDC(IDirectDrawSurface7 *iface, HDC hdc)
static HRESULT WINAPI ddraw_surface4_GetAttachedSurface(IDirectDrawSurface4 *iface, DDSCAPS2 *caps, IDirectDrawSurface4 **attachment)
static HRESULT WINAPI ddraw_surface7_SetPrivateData(IDirectDrawSurface7 *iface, REFGUID tag, void *data, DWORD size, DWORD flags)
static HRESULT WINAPI ddraw_surface7_AddAttachedSurface(IDirectDrawSurface7 *iface, IDirectDrawSurface7 *attachment)
static HRESULT WINAPI ddraw_surface1_GetOverlayPosition(IDirectDrawSurface *iface, LONG *x, LONG *y)
static HRESULT WINAPI ddraw_surface3_UpdateOverlayZOrder(IDirectDrawSurface3 *iface, DWORD flags, IDirectDrawSurface3 *reference)
static HRESULT WINAPI ddraw_surface2_UpdateOverlayZOrder(IDirectDrawSurface2 *iface, DWORD flags, IDirectDrawSurface2 *reference)
static HRESULT WINAPI ddraw_surface4_UpdateOverlay(IDirectDrawSurface4 *iface, RECT *src_rect, IDirectDrawSurface4 *dst_surface, RECT *dst_rect, DWORD flags, DDOVERLAYFX *fx)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface4_Blt(IDirectDrawSurface4 *iface, RECT *dst_rect, IDirectDrawSurface4 *src_surface, RECT *src_rect, DWORD flags, DDBLTFX *fx)
static HRESULT WINAPI ddraw_surface1_UpdateOverlayZOrder(IDirectDrawSurface *iface, DWORD flags, IDirectDrawSurface *reference)
static HRESULT WINAPI ddraw_surface3_GetBltStatus(IDirectDrawSurface3 *iface, DWORD flags)
static HRESULT WINAPI ddraw_surface3_EnumOverlayZOrders(IDirectDrawSurface3 *iface, DWORD flags, void *context, LPDDENUMSURFACESCALLBACK callback)
static struct IDirectDrawSurface3Vtbl ddraw_surface3_vtbl
static HRESULT WINAPI ddraw_surface3_Restore(IDirectDrawSurface3 *iface)
static HRESULT WINAPI ddraw_surface1_AddAttachedSurface(IDirectDrawSurface *iface, IDirectDrawSurface *attachment)
static HRESULT WINAPI ddraw_surface1_GetPixelFormat(IDirectDrawSurface *iface, DDPIXELFORMAT *pixel_format)
static HRESULT WINAPI ddraw_surface2_PageUnlock(IDirectDrawSurface2 *iface, DWORD flags)
static HRESULT WINAPI ddraw_surface3_Initialize(IDirectDrawSurface3 *iface, IDirectDraw *ddraw, DDSURFACEDESC *surface_desc)
static HRESULT WINAPI ddraw_surface2_GetSurfaceDesc(IDirectDrawSurface2 *iface, DDSURFACEDESC *DDSD)
static HRESULT WINAPI ddraw_surface2_Lock(IDirectDrawSurface2 *iface, RECT *rect, DDSURFACEDESC *surface_desc, DWORD flags, HANDLE h)
static ULONG WINAPI ddraw_gamma_control_AddRef(IDirectDrawGammaControl *iface)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface2_Flip(IDirectDrawSurface2 *iface, IDirectDrawSurface2 *src, DWORD flags)
static ULONG WINAPI ddraw_surface2_Release(IDirectDrawSurface2 *iface)
static HRESULT WINAPI ddraw_surface3_GetOverlayPosition(IDirectDrawSurface3 *iface, LONG *x, LONG *y)
static HRESULT CALLBACK EnumCallback2(IDirectDrawSurface7 *surface, DDSURFACEDESC2 *surface_desc, void *context)
static HRESULT WINAPI ddraw_surface4_DeleteAttachedSurface(IDirectDrawSurface4 *iface, DWORD flags, IDirectDrawSurface4 *attachment)
static HRESULT WINAPI ddraw_surface2_ReleaseDC(IDirectDrawSurface2 *iface, HDC dc)
HRESULT ddraw_surface_create(struct ddraw *ddraw, const DDSURFACEDESC2 *surface_desc, struct ddraw_surface **surface, IUnknown *outer_unknown, unsigned int version)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface4_Unlock(IDirectDrawSurface4 *iface, RECT *rect)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface4_Flip(IDirectDrawSurface4 *iface, IDirectDrawSurface4 *src, DWORD flags)
static HRESULT WINAPI ddraw_surface4_GetDC(IDirectDrawSurface4 *iface, HDC *dc)
static HRESULT ddraw_texture_init(struct ddraw_texture *texture, struct ddraw *ddraw, unsigned int layers, unsigned int levels, bool sysmem_fallback, bool reserve_memory)
static HRESULT WINAPI ddraw_surface3_GetCaps(IDirectDrawSurface3 *iface, DDSCAPS *caps)
static HRESULT WINAPI ddraw_surface7_UpdateOverlayDisplay(IDirectDrawSurface7 *iface, DWORD Flags)
static HRESULT WINAPI ddraw_surface3_SetSurfaceDesc(IDirectDrawSurface3 *iface, DDSURFACEDESC *surface_desc, DWORD flags)
static HRESULT WINAPI ddraw_surface2_EnumAttachedSurfaces(IDirectDrawSurface2 *iface, void *context, LPDDENUMSURFACESCALLBACK callback)
static struct ddraw_surface * get_sub_mimaplevel(struct ddraw_surface *surface)
static HRESULT WINAPI ddraw_surface3_PageLock(IDirectDrawSurface3 *iface, DWORD flags)
static HRESULT ddraw_surface_reserve_memory(struct wined3d_texture *wined3d_texture, unsigned int sub_resource_count)
static struct IDirectDrawSurfaceVtbl ddraw_surface1_vtbl
static void STDMETHODCALLTYPE ddraw_texture_wined3d_object_destroyed(void *parent)
static ULONG WINAPI ddraw_surface3_Release(IDirectDrawSurface3 *iface)
struct wined3d_rendertarget_view * ddraw_surface_get_rendertarget_view(struct ddraw_surface *surface)
static HRESULT WINAPI ddraw_surface4_GetDDInterface(IDirectDrawSurface4 *iface, void **ddraw)
static HRESULT WINAPI ddraw_surface7_GetSurfaceDesc(IDirectDrawSurface7 *iface, DDSURFACEDESC2 *surface_desc)
static ULONG WINAPI d3d_texture1_AddRef(IDirect3DTexture *iface)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface1_Unlock(IDirectDrawSurface *iface, void *data)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface1_BltFast(IDirectDrawSurface *iface, DWORD dst_x, DWORD dst_y, IDirectDrawSurface *src_surface, RECT *src_rect, DWORD flags)
static HRESULT WINAPI ddraw_surface1_Lock(IDirectDrawSurface *iface, RECT *rect, DDSURFACEDESC *surface_desc, DWORD flags, HANDLE h)
static ULONG WINAPI d3d_texture2_Release(IDirect3DTexture2 *iface)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface7_Flip(IDirectDrawSurface7 *iface, IDirectDrawSurface7 *src, DWORD flags)
static HRESULT WINAPI ddraw_surface2_GetPixelFormat(IDirectDrawSurface2 *iface, DDPIXELFORMAT *pixel_format)
static HRESULT WINAPI ddraw_surface3_AddAttachedSurface(IDirectDrawSurface3 *iface, IDirectDrawSurface3 *attachment)
static HRESULT WINAPI d3d_texture1_PaletteChanged(IDirect3DTexture *iface, DWORD start, DWORD count)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface3_Flip(IDirectDrawSurface3 *iface, IDirectDrawSurface3 *src, DWORD flags)
static void ddraw_surface_sync_color_keys(struct ddraw_surface *surface)
static HRESULT WINAPI ddraw_surface4_EnumOverlayZOrders(IDirectDrawSurface4 *iface, DWORD flags, void *context, LPDDENUMSURFACESCALLBACK2 callback)
static HRESULT ddraw_surface_blt_clipped(struct ddraw_surface *dst_surface, const RECT *dst_rect_in, struct ddraw_surface *src_surface, const RECT *src_rect_in, DWORD flags, DWORD fill_colour, const struct wined3d_blt_fx *fx, enum wined3d_texture_filter_type filter)
static HRESULT WINAPI ddraw_surface1_GetCaps(IDirectDrawSurface *iface, DDSCAPS *caps)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface2_Blt(IDirectDrawSurface2 *iface, RECT *dst_rect, IDirectDrawSurface2 *src_surface, RECT *src_rect, DWORD flags, DDBLTFX *fx)
static HRESULT WINAPI ddraw_surface1_Restore(IDirectDrawSurface *iface)
static HRESULT WINAPI ddraw_surface7_GetClipper(IDirectDrawSurface7 *iface, IDirectDrawClipper **clipper)
static HRESULT WINAPI ddraw_surface7_GetLOD(IDirectDrawSurface7 *iface, DWORD *MaxLOD)
static HRESULT WINAPI ddraw_surface7_GetFlipStatus(IDirectDrawSurface7 *iface, DWORD Flags)
static HRESULT WINAPI ddraw_surface1_GetBltStatus(IDirectDrawSurface *iface, DWORD flags)
static HRESULT WINAPI ddraw_surface2_UpdateOverlayDisplay(IDirectDrawSurface2 *iface, DWORD flags)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface1_Flip(IDirectDrawSurface *iface, IDirectDrawSurface *src, DWORD flags)
static HRESULT WINAPI ddraw_surface2_GetDDInterface(IDirectDrawSurface2 *iface, void **ddraw)
static HRESULT WINAPI ddraw_surface4_ReleaseDC(IDirectDrawSurface4 *iface, HDC dc)
static HRESULT WINAPI ddraw_surface3_GetAttachedSurface(IDirectDrawSurface3 *iface, DDSCAPS *caps, IDirectDrawSurface3 **attachment)
static HRESULT WINAPI ddraw_surface7_GetDC(IDirectDrawSurface7 *iface, HDC *dc)
static HRESULT WINAPI ddraw_surface7_SetColorKey(IDirectDrawSurface7 *iface, DWORD flags, DDCOLORKEY *color_key)
static HRESULT WINAPI ddraw_surface2_GetFlipStatus(IDirectDrawSurface2 *iface, DWORD flags)
struct ddraw_surface * unsafe_impl_from_IDirectDrawSurface7(IDirectDrawSurface7 *iface)
static HRESULT WINAPI ddraw_surface7_GetColorKey(IDirectDrawSurface7 *iface, DWORD Flags, DDCOLORKEY *CKey)
static HRESULT WINAPI ddraw_surface1_GetDC(IDirectDrawSurface *iface, HDC *dc)
static HRESULT WINAPI ddraw_surface7_GetOverlayPosition(IDirectDrawSurface7 *iface, LONG *x, LONG *y)
static HRESULT WINAPI ddraw_surface1_GetAttachedSurface(IDirectDrawSurface *iface, DDSCAPS *caps, IDirectDrawSurface **attachment)
static HRESULT WINAPI ddraw_surface2_GetBltStatus(IDirectDrawSurface2 *iface, DWORD flags)
static HRESULT WINAPI ddraw_surface2_AddAttachedSurface(IDirectDrawSurface2 *iface, IDirectDrawSurface2 *attachment)
static HRESULT WINAPI ddraw_surface1_GetColorKey(IDirectDrawSurface *iface, DWORD flags, DDCOLORKEY *color_key)
struct ddraw_surface * unsafe_impl_from_IDirect3DTexture(IDirect3DTexture *iface)
static HRESULT WINAPI ddraw_surface1_SetOverlayPosition(IDirectDrawSurface *iface, LONG x, LONG y)
static HRESULT WINAPI ddraw_surface4_EnumAttachedSurfaces(IDirectDrawSurface4 *iface, void *context, LPDDENUMSURFACESCALLBACK2 callback)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface3_BltFast(IDirectDrawSurface3 *iface, DWORD dst_x, DWORD dst_y, IDirectDrawSurface3 *src_surface, RECT *src_rect, DWORD flags)
static HRESULT WINAPI ddraw_surface2_GetAttachedSurface(IDirectDrawSurface2 *iface, DDSCAPS *caps, IDirectDrawSurface2 **attachment)
static ULONG WINAPI d3d_texture2_AddRef(IDirect3DTexture2 *iface)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface7_BltFast(IDirectDrawSurface7 *iface, DWORD dst_x, DWORD dst_y, IDirectDrawSurface7 *src_surface, RECT *src_rect, DWORD trans)
static HRESULT WINAPI ddraw_surface3_GetColorKey(IDirectDrawSurface3 *iface, DWORD flags, DDCOLORKEY *color_key)
static HRESULT WINAPI ddraw_surface7_SetClipper(IDirectDrawSurface7 *iface, IDirectDrawClipper *iclipper)
static const struct IDirect3DTextureVtbl d3d_texture1_vtbl
static HRESULT WINAPI ddraw_surface4_SetColorKey(IDirectDrawSurface4 *iface, DWORD flags, DDCOLORKEY *color_key)
static void ddraw_surface_cleanup(struct ddraw_surface *surface)
static HRESULT WINAPI ddraw_surface7_GetPixelFormat(IDirectDrawSurface7 *iface, DDPIXELFORMAT *PixelFormat)
static HRESULT WINAPI ddraw_surface4_SetPalette(IDirectDrawSurface4 *iface, IDirectDrawPalette *palette)
static ULONG WINAPI ddraw_surface7_Release(IDirectDrawSurface7 *iface)
static HRESULT WINAPI ddraw_surface1_QueryInterface(IDirectDrawSurface *iface, REFIID riid, void **object)
static const struct wined3d_parent_ops ddraw_view_wined3d_parent_ops
static HRESULT WINAPI ddraw_surface1_UpdateOverlayDisplay(IDirectDrawSurface *iface, DWORD flags)
static HRESULT ddraw_surface_set_color_key(struct ddraw_surface *surface, DWORD flags, DDCOLORKEY *color_key)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface3_BltBatch(IDirectDrawSurface3 *iface, DDBLTBATCH *batch, DWORD count, DWORD flags)
static HRESULT WINAPI ddraw_surface7_GetUniquenessValue(IDirectDrawSurface7 *iface, DWORD *pValue)
static HRESULT WINAPI ddraw_surface7_QueryInterface(IDirectDrawSurface7 *iface, REFIID riid, void **obj)
static HRESULT surface_lock(struct ddraw_surface *surface, RECT *rect, DDSURFACEDESC2 *surface_desc, unsigned int surface_desc_size, DWORD flags, HANDLE h)
static ULONG WINAPI d3d_texture1_Release(IDirect3DTexture *iface)
static HRESULT WINAPI ddraw_surface7_SetLOD(IDirectDrawSurface7 *iface, DWORD MaxLOD)
static HRESULT WINAPI ddraw_surface4_GetColorKey(IDirectDrawSurface4 *iface, DWORD flags, DDCOLORKEY *color_key)
static HRESULT WINAPI ddraw_surface4_GetSurfaceDesc(IDirectDrawSurface4 *iface, DDSURFACEDESC2 *DDSD)
static HRESULT WINAPI ddraw_surface3_GetFlipStatus(IDirectDrawSurface3 *iface, DWORD flags)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface7_Unlock(IDirectDrawSurface7 *iface, RECT *rect)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface4_BltFast(IDirectDrawSurface4 *iface, DWORD dst_x, DWORD dst_y, IDirectDrawSurface4 *src_surface, RECT *src_rect, DWORD flags)
static HRESULT WINAPI ddraw_surface7_GetPalette(IDirectDrawSurface7 *iface, IDirectDrawPalette **palette)
static const struct wined3d_parent_ops ddraw_surface_wined3d_parent_ops
static HRESULT ddraw_surface_set_palette(struct ddraw_surface *surface, IDirectDrawPalette *palette)
static HRESULT WINAPI ddraw_surface3_GetSurfaceDesc(IDirectDrawSurface3 *iface, DDSURFACEDESC *surface_desc)
static ULONG WINAPI ddraw_surface3_AddRef(IDirectDrawSurface3 *iface)
static HRESULT WINAPI ddraw_surface4_PageUnlock(IDirectDrawSurface4 *iface, DWORD flags)
static HRESULT WINAPI ddraw_surface3_AddOverlayDirtyRect(IDirectDrawSurface3 *iface, RECT *rect)
static HRESULT WINAPI ddraw_surface3_GetPixelFormat(IDirectDrawSurface3 *iface, DDPIXELFORMAT *pixel_format)
struct ddraw_surface * unsafe_impl_from_IDirectDrawSurface(IDirectDrawSurface *iface)
static HRESULT WINAPI ddraw_surface4_GetFlipStatus(IDirectDrawSurface4 *iface, DWORD flags)
static HRESULT ddraw_surface_attach_surface(struct ddraw_surface *This, struct ddraw_surface *Surf)
static void ddraw_surface_add_iface(struct ddraw_surface *surface)
static HRESULT WINAPI ddraw_surface7_SetOverlayPosition(IDirectDrawSurface7 *iface, LONG x, LONG y)
static HRESULT WINAPI ddraw_surface3_GetClipper(IDirectDrawSurface3 *iface, IDirectDrawClipper **clipper)
static HRESULT WINAPI ddraw_surface7_ChangeUniquenessValue(IDirectDrawSurface7 *iface)
static HRESULT WINAPI ddraw_surface3_UpdateOverlay(IDirectDrawSurface3 *iface, RECT *src_rect, IDirectDrawSurface3 *dst_surface, RECT *dst_rect, DWORD flags, DDOVERLAYFX *fx)
static HRESULT WINAPI ddraw_gamma_control_SetGammaRamp(IDirectDrawGammaControl *iface, DWORD flags, DDGAMMARAMP *gamma_ramp)
static HRESULT CDECL ddraw_reset_enum_callback(struct wined3d_resource *resource)
static HRESULT WINAPI ddraw_surface7_EnumOverlayZOrders(IDirectDrawSurface7 *iface, DWORD Flags, void *context, LPDDENUMSURFACESCALLBACK7 cb)
struct ddraw_surface * unsafe_impl_from_IDirect3DTexture2(IDirect3DTexture2 *iface)
static HRESULT WINAPI ddraw_surface3_GetPalette(IDirectDrawSurface3 *iface, IDirectDrawPalette **palette)
static ULONG WINAPI ddraw_surface1_AddRef(IDirectDrawSurface *iface)
static HRESULT WINAPI ddraw_surface4_GetPalette(IDirectDrawSurface4 *iface, IDirectDrawPalette **palette)
static HRESULT WINAPI ddraw_surface3_EnumAttachedSurfaces(IDirectDrawSurface3 *iface, void *context, LPDDENUMSURFACESCALLBACK callback)
static HRESULT WINAPI ddraw_surface3_ReleaseDC(IDirectDrawSurface3 *iface, HDC dc)
static HRESULT WINAPI d3d_texture1_Load(IDirect3DTexture *iface, IDirect3DTexture *src_texture)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface2_BltBatch(IDirectDrawSurface2 *iface, DDBLTBATCH *batch, DWORD count, DWORD flags)
static HRESULT WINAPI ddraw_surface7_GetCaps(IDirectDrawSurface7 *iface, DDSCAPS2 *Caps)
static HRESULT ddraw_surface_blt(struct ddraw_surface *dst_surface, const RECT *dst_rect, struct ddraw_surface *src_surface, const RECT *src_rect, DWORD flags, DWORD fill_colour, const struct wined3d_blt_fx *fx, enum wined3d_texture_filter_type filter)
static HRESULT WINAPI ddraw_surface7_SetPalette(IDirectDrawSurface7 *iface, IDirectDrawPalette *palette)
static HRESULT WINAPI ddraw_surface4_GetPixelFormat(IDirectDrawSurface4 *iface, DDPIXELFORMAT *pixel_format)
static HRESULT WINAPI d3d_texture2_GetHandle(IDirect3DTexture2 *iface, IDirect3DDevice2 *device, D3DTEXTUREHANDLE *handle)
static HRESULT WINAPI ddraw_surface4_Restore(IDirectDrawSurface4 *iface)
static HRESULT WINAPI ddraw_surface7_IsLost(IDirectDrawSurface7 *iface)
static HRESULT WINAPI ddraw_surface4_GetPrivateData(IDirectDrawSurface4 *iface, REFGUID tag, void *data, DWORD *size)
static ULONG WINAPI ddraw_surface7_AddRef(IDirectDrawSurface7 *iface)
static HRESULT WINAPI ddraw_surface4_GetUniquenessValue(IDirectDrawSurface4 *iface, DWORD *pValue)
static struct IDirectDrawSurface7Vtbl ddraw_surface7_vtbl
static HRESULT ddraw_surface_lock_ddsd(struct ddraw_surface *surface, RECT *rect, DDSURFACEDESC *surface_desc, DWORD flags, HANDLE h)
static HRESULT WINAPI ddraw_surface2_SetPalette(IDirectDrawSurface2 *iface, IDirectDrawPalette *palette)
static HRESULT WINAPI ddraw_surface7_UpdateOverlayZOrder(IDirectDrawSurface7 *iface, DWORD flags, IDirectDrawSurface7 *reference)
static HRESULT WINAPI d3d_texture1_Unload(IDirect3DTexture *iface)
static struct ddraw_surface * unsafe_impl_from_IDirectDrawSurface3(IDirectDrawSurface3 *iface)
static HRESULT WINAPI d3d_texture2_QueryInterface(IDirect3DTexture2 *iface, REFIID riid, void **object)
static HRESULT WINAPI ddraw_surface4_FreePrivateData(IDirectDrawSurface4 *iface, REFGUID tag)
static HRESULT WINAPI ddraw_surface3_SetPalette(IDirectDrawSurface3 *iface, IDirectDrawPalette *palette)
static HRESULT CALLBACK EnumCallback(IDirectDrawSurface7 *surface, DDSURFACEDESC2 *surface_desc, void *context)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface4_BltBatch(IDirectDrawSurface4 *iface, DDBLTBATCH *batch, DWORD count, DWORD flags)
static HRESULT WINAPI ddraw_surface3_IsLost(IDirectDrawSurface3 *iface)
static HRESULT WINAPI ddraw_surface1_SetPalette(IDirectDrawSurface *iface, IDirectDrawPalette *palette)
static HRESULT WINAPI ddraw_surface1_GetPalette(IDirectDrawSurface *iface, IDirectDrawPalette **palette)
static void STDMETHODCALLTYPE ddraw_surface_wined3d_object_destroyed(void *parent)
static HRESULT WINAPI ddraw_surface3_SetColorKey(IDirectDrawSurface3 *iface, DWORD flags, DDCOLORKEY *color_key)
static HRESULT WINAPI d3d_texture1_QueryInterface(IDirect3DTexture *iface, REFIID riid, void **object)
static HRESULT WINAPI ddraw_surface3_GetDDInterface(IDirectDrawSurface3 *iface, void **ddraw)
static HRESULT WINAPI ddraw_surface4_Initialize(IDirectDrawSurface4 *iface, IDirectDraw *ddraw, DDSURFACEDESC2 *surface_desc)
static HRESULT WINAPI ddraw_surface2_GetCaps(IDirectDrawSurface2 *iface, DDSCAPS *caps)
static HRESULT WINAPI ddraw_surface7_FreePrivateData(IDirectDrawSurface7 *iface, REFGUID tag)
static HRESULT WINAPI ddraw_surface1_GetFlipStatus(IDirectDrawSurface *iface, DWORD flags)
static HRESULT WINAPI ddraw_gamma_control_QueryInterface(IDirectDrawGammaControl *iface, REFIID riid, void **object)
static HRESULT WINAPI ddraw_surface2_GetColorKey(IDirectDrawSurface2 *iface, DWORD flags, DDCOLORKEY *color_key)
static HRESULT WINAPI ddraw_surface2_Initialize(IDirectDrawSurface2 *iface, IDirectDraw *ddraw, DDSURFACEDESC *surface_desc)
static HRESULT WINAPI ddraw_surface2_GetPalette(IDirectDrawSurface2 *iface, IDirectDrawPalette **palette)
static HRESULT WINAPI ddraw_surface7_GetPrivateData(IDirectDrawSurface7 *iface, REFGUID tag, void *data, DWORD *size)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface1_BltBatch(IDirectDrawSurface *iface, DDBLTBATCH *batch, DWORD count, DWORD flags)
static void ddraw_surface_init(struct ddraw_surface *surface, struct ddraw *ddraw, struct wined3d_texture *wined3d_texture, unsigned int sub_resource_idx)
static ULONG WINAPI ddraw_surface2_AddRef(IDirectDrawSurface2 *iface)
static struct IDirectDrawSurface2Vtbl ddraw_surface2_vtbl
static HRESULT WINAPI ddraw_surface2_SetClipper(IDirectDrawSurface2 *iface, IDirectDrawClipper *clipper)
static HRESULT WINAPI ddraw_surface1_IsLost(IDirectDrawSurface *iface)
static HRESULT WINAPI ddraw_surface1_ReleaseDC(IDirectDrawSurface *iface, HDC dc)
static BOOL ddraw_surface_is_lost(const struct ddraw_surface *surface)
static HRESULT WINAPI ddraw_surface7_SetSurfaceDesc(IDirectDrawSurface7 *iface, DDSURFACEDESC2 *DDSD, DWORD Flags)
static HRESULT WINAPI ddraw_surface7_PageLock(IDirectDrawSurface7 *iface, DWORD Flags)
static HRESULT WINAPI ddraw_surface2_SetColorKey(IDirectDrawSurface2 *iface, DWORD flags, DDCOLORKEY *color_key)
static HRESULT WINAPI ddraw_surface7_GetPriority(IDirectDrawSurface7 *iface, DWORD *priority)
static HRESULT WINAPI ddraw_surface1_AddOverlayDirtyRect(IDirectDrawSurface *iface, RECT *rect)
static HRESULT WINAPI ddraw_surface4_AddOverlayDirtyRect(IDirectDrawSurface4 *iface, RECT *rect)
static HRESULT WINAPI ddraw_surface4_GetOverlayPosition(IDirectDrawSurface4 *iface, LONG *x, LONG *y)
static HRESULT WINAPI ddraw_gamma_control_GetGammaRamp(IDirectDrawGammaControl *iface, DWORD flags, DDGAMMARAMP *gamma_ramp)
static HRESULT WINAPI ddraw_surface7_EnumAttachedSurfaces(IDirectDrawSurface7 *iface, void *context, LPDDENUMSURFACESCALLBACK7 cb)
static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface3_Unlock(IDirectDrawSurface3 *iface, void *data)
static HRESULT WINAPI ddraw_surface4_GetBltStatus(IDirectDrawSurface4 *iface, DWORD flags)
static HRESULT WINAPI d3d_texture1_GetHandle(IDirect3DTexture *iface, IDirect3DDevice *device, D3DTEXTUREHANDLE *handle)
static HRESULT WINAPI ddraw_surface2_GetDC(IDirectDrawSurface2 *iface, HDC *dc)
static HRESULT WINAPI ddraw_surface3_DeleteAttachedSurface(IDirectDrawSurface3 *iface, DWORD flags, IDirectDrawSurface3 *attachment)
static HRESULT WINAPI ddraw_surface7_Initialize(IDirectDrawSurface7 *iface, IDirectDraw *ddraw, DDSURFACEDESC2 *surface_desc)
static HRESULT WINAPI ddraw_surface7_GetBltStatus(IDirectDrawSurface7 *iface, DWORD Flags)
static HRESULT WINAPI d3d_texture2_PaletteChanged(IDirect3DTexture2 *iface, DWORD start, DWORD count)
static HRESULT WINAPI ddraw_surface4_ChangeUniquenessValue(IDirectDrawSurface4 *iface)
static HRESULT WINAPI ddraw_surface2_AddOverlayDirtyRect(IDirectDrawSurface2 *iface, RECT *rect)
static HRESULT WINAPI ddraw_surface7_Restore(IDirectDrawSurface7 *iface)
static HRESULT WINAPI ddraw_surface7_GetAttachedSurface(IDirectDrawSurface7 *iface, DDSCAPS2 *caps, IDirectDrawSurface7 **surface)
static HRESULT WINAPI ddraw_surface2_GetOverlayPosition(IDirectDrawSurface2 *iface, LONG *x, LONG *y)
static HRESULT WINAPI ddraw_surface3_SetOverlayPosition(IDirectDrawSurface3 *iface, LONG x, LONG y)
static HRESULT WINAPI ddraw_surface3_QueryInterface(IDirectDrawSurface3 *iface, REFIID riid, void **object)
static BOOL surface_validate_lock_desc(struct ddraw_surface *surface, const DDSURFACEDESC *desc, unsigned int *size)
static HRESULT WINAPI ddraw_surface7_GetDDInterface(IDirectDrawSurface7 *iface, void **DD)
static HRESULT WINAPI ddraw_surface4_SetClipper(IDirectDrawSurface4 *iface, IDirectDrawClipper *clipper)
static HRESULT WINAPI ddraw_surface4_SetPrivateData(IDirectDrawSurface4 *iface, REFGUID tag, void *data, DWORD size, DWORD flags)
HRESULT CDECL wined3d_device_context_set_rendertarget_views(struct wined3d_device_context *context, unsigned int start_idx, unsigned int count, struct wined3d_rendertarget_view *const *views, BOOL set_viewport)
struct wined3d_rendertarget_view *CDECL wined3d_device_context_get_depth_stencil_view(const struct wined3d_device_context *context)
ULONG CDECL wined3d_device_decref(struct wined3d_device *device)
HRESULT CDECL wined3d_device_reset(struct wined3d_device *device, const struct wined3d_swapchain_desc *swapchain_desc, const struct wined3d_display_mode *mode, wined3d_device_reset_cb callback, BOOL reset_state)
struct wined3d_rendertarget_view *CDECL wined3d_device_context_get_rendertarget_view(const struct wined3d_device_context *context, unsigned int view_idx)
void CDECL wined3d_device_set_gamma_ramp(const struct wined3d_device *device, UINT swapchain_idx, uint32_t flags, const struct wined3d_gamma_ramp *ramp)
HRESULT CDECL wined3d_device_context_clear_rendertarget_view(struct wined3d_device_context *context, struct wined3d_rendertarget_view *view, const RECT *rect, unsigned int flags, const struct wined3d_color *color, float depth, unsigned int stencil)
void CDECL wined3d_device_get_gamma_ramp(const struct wined3d_device *device, UINT swapchain_idx, struct wined3d_gamma_ramp *ramp)
ULONG CDECL wined3d_device_incref(struct wined3d_device *device)
HRESULT CDECL wined3d_device_context_set_depth_stencil_view(struct wined3d_device_context *context, struct wined3d_rendertarget_view *view)
void CDECL wined3d_palette_apply_to_dc(const struct wined3d_palette *palette, HDC dc)
unsigned int CDECL wined3d_resource_set_priority(struct wined3d_resource *resource, unsigned int priority)
unsigned int CDECL wined3d_resource_get_priority(const struct wined3d_resource *resource)
HRESULT CDECL wined3d_resource_unmap(struct wined3d_resource *resource, unsigned int sub_resource_idx)
void CDECL wined3d_resource_get_desc(const struct wined3d_resource *resource, struct wined3d_resource_desc *desc)
HRESULT CDECL wined3d_resource_map(struct wined3d_resource *resource, unsigned int sub_resource_idx, struct wined3d_map_desc *map_desc, const struct wined3d_box *box, uint32_t flags)
void CDECL wined3d_resource_set_parent(struct wined3d_resource *resource, void *parent, const struct wined3d_parent_ops *parent_ops)
HRESULT CDECL wined3d_texture_get_overlay_position(const struct wined3d_texture *texture, unsigned int sub_resource_idx, LONG *x, LONG *y)
void *CDECL wined3d_texture_get_parent(const struct wined3d_texture *texture)
HRESULT CDECL wined3d_texture_get_dc(struct wined3d_texture *texture, unsigned int sub_resource_idx, HDC *dc)
HRESULT CDECL wined3d_texture_get_sub_resource_desc(const struct wined3d_texture *texture, unsigned int sub_resource_idx, struct wined3d_sub_resource_desc *desc)
HRESULT CDECL wined3d_texture_set_color_key(struct wined3d_texture *texture, uint32_t flags, const struct wined3d_color_key *color_key)
unsigned int CDECL wined3d_texture_get_lod(const struct wined3d_texture *texture)
HRESULT CDECL wined3d_texture_create(struct wined3d_device *device, const struct wined3d_resource_desc *desc, UINT layer_count, UINT level_count, uint32_t flags, const struct wined3d_sub_resource_data *data, void *parent, const struct wined3d_parent_ops *parent_ops, struct wined3d_texture **texture)
HRESULT CDECL wined3d_texture_update_overlay(struct wined3d_texture *texture, unsigned int sub_resource_idx, const RECT *src_rect, struct wined3d_texture *dst_texture, unsigned int dst_sub_resource_idx, const RECT *dst_rect, uint32_t flags)
void CDECL wined3d_texture_set_sub_resource_parent(struct wined3d_texture *texture, unsigned int sub_resource_idx, void *parent, const struct wined3d_parent_ops *parent_ops)
void *CDECL wined3d_texture_get_sub_resource_parent(struct wined3d_texture *texture, unsigned int sub_resource_idx)
struct wined3d_resource *CDECL wined3d_texture_get_resource(struct wined3d_texture *texture)
ULONG CDECL wined3d_texture_decref(struct wined3d_texture *texture)
HRESULT CDECL wined3d_texture_update_desc(struct wined3d_texture *texture, unsigned int sub_resource_idx, void *mem, unsigned int pitch)
ULONG CDECL wined3d_texture_incref(struct wined3d_texture *texture)
HRESULT CDECL wined3d_texture_release_dc(struct wined3d_texture *texture, unsigned int sub_resource_idx, HDC dc)
UINT CDECL wined3d_texture_get_level_count(const struct wined3d_texture *texture)
HRESULT CDECL wined3d_device_context_blt(struct wined3d_device_context *context, struct wined3d_texture *dst_texture, unsigned int dst_sub_resource_idx, const RECT *dst_rect, struct wined3d_texture *src_texture, unsigned int src_sub_resource_idx, const RECT *src_rect, unsigned int flags, const struct wined3d_blt_fx *fx, enum wined3d_texture_filter_type filter)
HRESULT CDECL wined3d_texture_set_overlay_position(struct wined3d_texture *texture, unsigned int sub_resource_idx, LONG x, LONG y)
unsigned int CDECL wined3d_texture_set_lod(struct wined3d_texture *texture, unsigned int lod)
void CDECL wined3d_texture_get_pitch(const struct wined3d_texture *texture, unsigned int level, unsigned int *row_pitch, unsigned int *slice_pitch)
HRESULT CDECL wined3d_rendertarget_view_create_from_sub_resource(struct wined3d_texture *texture, unsigned int sub_resource_idx, void *parent, const struct wined3d_parent_ops *parent_ops, struct wined3d_rendertarget_view **view)
void CDECL wined3d_rendertarget_view_set_parent(struct wined3d_rendertarget_view *view, void *parent, const struct wined3d_parent_ops *parent_ops)
ULONG CDECL wined3d_rendertarget_view_incref(struct wined3d_rendertarget_view *view)
ULONG CDECL wined3d_rendertarget_view_decref(struct wined3d_rendertarget_view *view)
#define WINE_DECLARE_DEBUG_CHANNEL(x)
static const WCHAR version[]
ULONG WINAPI DECLSPEC_HOTPATCH GetTickCount(void)
static VOID BitBlt(_In_ ULONG Left, _In_ ULONG Top, _In_ ULONG Width, _In_ ULONG Height, _In_reads_bytes_(Height *Stride) PUCHAR Buffer, _In_ ULONG BitsPerPixel, _In_ ULONG Stride)
GLint GLint GLint GLint GLint x
GLuint GLuint GLsizei count
GLint GLint GLsizei GLsizei height
GLint GLint GLint GLint GLint GLint y
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLdouble GLdouble GLdouble r
GLint GLint GLsizei width
GLdouble GLdouble GLdouble GLdouble top
GLubyte GLubyte GLubyte GLubyte w
GLsizeiptr const GLvoid GLenum usage
GLfloat GLfloat GLfloat GLfloat h
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble * u
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint GLint GLint j
#define memcpy(s1, s2, n)
struct task_struct * current
static IPrintDialogCallback callback
D3D11_SHADER_VARIABLE_DESC desc
static const LARGE_INTEGER *static const HANDLE const LARGE_INTEGER *static PSLIST_ENTRY PSLIST_ENTRY last
static float(__cdecl *square_half_float)(float x
#define IsEqualGUID(rguid1, rguid2)
DWORD IDirectDrawSurface7
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
BOOL WINAPI RedrawWindow(_In_opt_ HWND, _In_opt_ LPCRECT, _In_opt_ HRGN, _In_ UINT)
HWND WINAPI GetForegroundWindow(void)
BOOL WINAPI IsRectEmpty(_In_ LPCRECT)
HDC WINAPI GetDC(_In_opt_ HWND)
BOOL WINAPI SetRectEmpty(_Out_ LPRECT)
BOOL WINAPI SetRect(_Out_ LPRECT, _In_ int, _In_ int, _In_ int, _In_ int)
for(i=0;i< sizeof(testsuite)/sizeof(testsuite[0]);++i) ok(call_test(testsuite[i].func)
#define DDPCAPS_PRIMARYSURFACE
#define DDSCAPS2_CUBEMAP_NEGATIVEZ
#define DDSCAPS_FRONTBUFFER
#define DDSCAPS_ALLOCONLOAD
#define DDERR_NOTAOVERLAYSURFACE
#define DDCKEY_COLORSPACE
#define DDSCAPS2_CUBEMAP_ALLFACES
#define DDBLT_ZBUFFERDESTOVERRIDE
#define DDERR_INVALIDRECT
#define DDBLT_KEYDESTOVERRIDE
#define DDBLT_ZBUFFERDESTCONSTOVERRIDE
struct _DDSURFACEDESC2 DDSURFACEDESC2
#define DDERR_INVALIDPIXELFORMAT
#define DDBLT_ALPHAEDGEBLEND
#define DDERR_NOTFLIPPABLE
#define DDSCAPS2_CUBEMAP_POSITIVEX
#define DDSCAPS_PRIMARYSURFACE
#define DDERR_INVALIDCAPS
#define DDERR_INVALIDOBJECT
#define DDERR_CANNOTATTACHSURFACE
#define DDBLT_ZBUFFERSRCCONSTOVERRIDE
#define DDSCAPS_WRITEONLY
#define DDBLT_ALPHADESTSURFACEOVERRIDE
#define DDSD_CKDESTOVERLAY
#define DDERR_SURFACELOST
#define DDBLT_ZBUFFERSRCOVERRIDE
#define DDERR_NOOVERLAYHW
HRESULT(WINAPI * LPDDENUMSURFACESCALLBACK)(LPDIRECTDRAWSURFACE, LPDDSURFACEDESC, LPVOID)
#define DDSCAPS2_MIPMAPSUBLEVEL
#define DDCKEY_SRCOVERLAY
#define DDCKEY_DESTOVERLAY
HRESULT(WINAPI * LPDDENUMSURFACESCALLBACK2)(LPDIRECTDRAWSURFACE4, LPDDSURFACEDESC2, LPVOID)
#define DDERR_NOEXCLUSIVEMODE
#define DDBLTFAST_SRCCOLORKEY
#define DDERR_OUTOFMEMORY
#define DDSCAPS2_D3DTEXTUREMANAGE
#define DDSCAPS_OFFSCREENPLAIN
#define DDERR_CANTCREATEDC
#define DDERR_NOPALETTEATTACHED
#define DDERR_OUTOFVIDEOMEMORY
#define DDBLTFAST_DESTCOLORKEY
#define DDERR_SURFACENOTATTACHED
#define DDERR_NOTONMIPMAPSUBLEVEL
#define DDSCAPS_BACKBUFFER
#define DDBLT_ALPHASRCNEG
#define DDSCAPS2_CUBEMAP_NEGATIVEY
#define DDERR_NOCOLORKEYHW
#define DDERR_UNSUPPORTED
HRESULT(WINAPI * LPDDENUMSURFACESCALLBACK7)(LPDIRECTDRAWSURFACE7, LPDDSURFACEDESC2, LPVOID)
#define DDSCAPS2_CUBEMAP_POSITIVEY
#define DDSCAPS2_CUBEMAP_NEGATIVEX
#define DDERR_NOCLIPPERATTACHED
#define DDSCAPS2_TEXTUREMANAGE
#define DDSCAPS2_CUBEMAP_POSITIVEZ
#define DDERR_INVALIDPARAMS
#define DDSCAPS_VIDEOMEMORY
#define DDERR_DCALREADYCREATED
#define DDBLT_KEYSRCOVERRIDE
#define DDSCAPS_LOCALVIDMEM
#define DDBLT_ALPHADESTNEG
#define DDERR_NORASTEROPHW
#define DDERR_SURFACEALREADYATTACHED
#define DDERR_ALREADYINITIALIZED
#define DDERR_CANNOTDETACHSURFACE
#define DDERR_SURFACEBUSY
#define DDBLTFAST_DONOTWAIT
#define DDERR_NODIRECTDRAWHW
#define DDSCAPS_SYSTEMMEMORY
#define DDBLT_ALPHADESTCONSTOVERRIDE
#define DDSD_BACKBUFFERCOUNT
#define DDBLT_ALPHASRCCONSTOVERRIDE
#define DDERR_INVALIDSURFACETYPE
#define DDBLT_ALPHASRCSURFACEOVERRIDE
#define DDERR_BLTFASTCANTCLIP
#define DDSD_CKSRCOVERLAY
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
DDPIXELFORMAT ddpfPixelFormat
DDCOLORKEY ddckCKDestOverlay
DDCOLORKEY ddckCKSrcOverlay
LPDDENUMSURFACESCALLBACK2 callback
LPDDENUMSURFACESCALLBACK callback
IDirect3DDevice2 IDirect3DDevice2_iface
IDirectDrawClipper IDirectDrawClipper_iface
struct wined3d_palette * wined3d_palette
IDirectDrawPalette IDirectDrawPalette_iface
IDirectDrawSurface IDirectDrawSurface_iface
struct wined3d_texture * draw_texture
IDirectDrawSurface2 IDirectDrawSurface2_iface
struct ddraw_clipper * clipper
IDirectDrawGammaControl IDirectDrawGammaControl_iface
DDSURFACEDESC2 surface_desc
unsigned int sysmem_fallback
IUnknown * attached_iface
struct wined3d_private_store private_store
IDirectDrawSurface3 IDirectDrawSurface3_iface
struct ddraw_surface * first_attached
struct wined3d_rendertarget_view * wined3d_rtv
unsigned int sub_resource_idx
IDirect3DTexture IDirect3DTexture_iface
struct d3d_device * device1
struct ddraw_palette * palette
IDirectDrawSurface7 IDirectDrawSurface7_iface
struct ddraw_surface * next_attached
struct list surface_list_entry
IUnknown * ifaceToRelease
IDirectDrawSurface4 IDirectDrawSurface4_iface
struct ddraw_surface * complex_array[MAX_COMPLEX_ATTACHED]
unsigned int texture_location
struct wined3d_texture * wined3d_texture
IDirect3DTexture2 IDirect3DTexture2_iface
struct ddraw_surface * root
DDSURFACEDESC2 surface_desc
struct wined3d_texture * gdi_surface
struct ddraw_surface * primary
struct wined3d_device * wined3d_device
struct wined3d_device_context * immediate_context
struct wined3d_swapchain * wined3d_swapchain
struct wined3d_output * wined3d_output
struct wined3d_adapter * wined3d_adapter
struct wined3d_color_key src_color_key
struct wined3d_color_key dst_color_key
union wined3d_private_data::@4825 content
enum wined3d_resource_type resource_type
enum wined3d_multisample_type multisample_type
unsigned int multisample_quality
enum wined3d_format_id format
enum wined3d_format_id format
unsigned int backbuffer_height
unsigned int backbuffer_width
enum wined3d_format_id backbuffer_format
#define CONTAINING_RECORD(address, type, field)
HRESULT CDECL wined3d_check_device_format(const struct wined3d *wined3d, const struct wined3d_adapter *adapter, enum wined3d_device_type device_type, enum wined3d_format_id adapter_format_id, uint32_t usage, unsigned int bind_flags, enum wined3d_resource_type resource_type, enum wined3d_format_id check_format_id)
unsigned int CDECL wined3d_calculate_format_pitch(const struct wined3d_adapter *adapter, enum wined3d_format_id format_id, unsigned int width)
HRESULT CDECL wined3d_output_get_display_mode(const struct wined3d_output *output, struct wined3d_display_mode *mode, enum wined3d_display_rotation *rotation)
void CDECL wined3d_stateblock_depth_buffer_changed(struct wined3d_stateblock *stateblock)
void CDECL wined3d_stateblock_texture_changed(struct wined3d_stateblock *stateblock, const struct wined3d_texture *texture)
struct wined3d_texture *CDECL wined3d_swapchain_get_back_buffer(const struct wined3d_swapchain *swapchain, UINT back_buffer_idx)
void CDECL wined3d_swapchain_get_desc(const struct wined3d_swapchain *swapchain, struct wined3d_swapchain_desc *desc)
void CDECL wined3d_swapchain_set_window(struct wined3d_swapchain *swapchain, HWND window)
void CDECL wined3d_swapchain_set_palette(struct wined3d_swapchain *swapchain, struct wined3d_palette *palette)
HRESULT CDECL wined3d_swapchain_get_display_mode(const struct wined3d_swapchain *swapchain, struct wined3d_display_mode *mode, enum wined3d_display_rotation *rotation)
HRESULT CDECL wined3d_swapchain_present(struct wined3d_swapchain *swapchain, const RECT *src_rect, const RECT *dst_rect, HWND dst_window_override, unsigned int swap_interval, uint32_t flags)
struct wined3d_texture *CDECL wined3d_swapchain_get_front_buffer(const struct wined3d_swapchain *swapchain)
@ WINED3D_CUBEMAP_FACE_NEGATIVE_Z
@ WINED3D_CUBEMAP_FACE_NEGATIVE_X
@ WINED3D_CUBEMAP_FACE_POSITIVE_Z
@ WINED3D_CUBEMAP_FACE_POSITIVE_X
@ WINED3D_CUBEMAP_FACE_NEGATIVE_Y
@ WINED3D_CUBEMAP_FACE_POSITIVE_Y
static unsigned int wined3d_log2i(unsigned int x)
#define WINED3DCLEAR_TARGET
@ WINED3D_MULTISAMPLE_NONE
static void wined3d_private_store_cleanup(struct wined3d_private_store *store)
#define WINED3D_BLT_DST_CKEY
#define WINED3DUSAGE_OWNDC
#define WINED3DUSAGE_LEGACY_CUBEMAP
#define WINED3D_RESOURCE_ACCESS_GPU
#define WINED3D_BLT_SRC_CKEY
#define WINED3D_RESOURCE_ACCESS_CPU
@ WINED3D_RTYPE_TEXTURE_2D
#define WINEDDGFS_ISFLIPDONE
#define WINED3DERR_NOTAVAILABLE
wined3d_texture_filter_type
static struct wined3d_private_data * wined3d_private_store_get_private_data(const struct wined3d_private_store *store, const GUID *tag)
#define WINED3DUSAGE_OVERLAY
#define WINEDDGBS_ISBLTDONE
#define WINED3D_BIND_SHADER_RESOURCE
#define WINED3DUSAGE_VIDMEM_ACCOUNTING
#define WINED3D_BIND_DEPTH_STENCIL
static void wined3d_box_set(struct wined3d_box *box, unsigned int left, unsigned int top, unsigned int right, unsigned int bottom, unsigned int front, unsigned int back)
#define WINED3DCLEAR_SYNCHRONOUS
#define WINED3D_RESOURCE_ACCESS_MAP_R
static void wined3d_private_store_free_private_data(struct wined3d_private_store *store, struct wined3d_private_data *entry)
#define WINED3DUSAGE_MANAGED
static void wined3d_private_store_init(struct wined3d_private_store *store)
#define WINED3D_MAP_WRITE
#define WINED3D_BLT_SYNCHRONOUS
#define WINED3D_BLT_DO_NOT_WAIT
#define WINED3DCLEAR_ZBUFFER
#define WINED3D_BIND_RENDER_TARGET
#define WINED3DUSAGE_DYNAMIC
#define WINED3DERR_INVALIDCALL
static HRESULT wined3d_private_store_set_private_data(struct wined3d_private_store *store, const GUID *guid, const void *data, DWORD data_size, uint32_t flags)
#define WINED3D_TEXTURE_CREATE_GET_DC_LENIENT
@ WINED3D_DEVICE_TYPE_HAL
#define WINED3D_RESOURCE_ACCESS_MAP_W
#define WINEDDGFS_CANFLIP
void WINAPI wined3d_mutex_unlock(void)
void WINAPI wined3d_mutex_lock(void)
#define CLASS_E_NOAGGREGATION