PDD_SURFCB_DESTROYSURFACE callback function

The DestroyD3DBuffer callback function is used to destroy a driver-level command or vertex buffer.

Syntax

PDD_SURFCB_DESTROYSURFACE DestroyD3DBuffer;

DWORD APIENTRY DestroyD3DBuffer(
   PDD_DESTROYSURFACEDATA lpDestroyD3DBuffer
)
{ ... }

Parameters

  • lpDestroyD3DBuffer
    Points to a DD_DESTROYSURFACEDATA structure that contains the information needed to destroy a Microsoft Direct3D command or vertex buffer.

Return value

DestroyD3DBuffer returns one of the following callback codes:

DDHAL_DRIVER_HANDLED

DDHAL_DRIVER_NOTHANDLED

Remarks

This callback is used only if the driver manages driver-level command and vertex buffers.

If Microsoft DirectDraw performed the memory allocation at buffer creation time, DestroyD3DBuffer should return DDHAL_DRIVER_NOTHANDLED.

If the driver is performing the buffer memory management itself, DestroyD3DBuffer should free the buffer memory and perform any other cleanup, such as freeing private data stored in the dwReserved1 members of the buffer's DD_SURFACE_GLOBAL and DD_SURFACE_LOCAL structures.

This call has the same prototype as DdDestroySurface. The DestroyD3DBuffer callback is used instead when the surface in question has the DDSCAPS_EXECUTEBUFFER flag set in the ddsCaps member of the DD_SURFACE_LOCAL structure.

DestroyD3DBuffer can be called with a disabled PDEV. A PDEV is disabled or enabled by calling the display driver's DrvAssertMode function. See Managing PDEVs for more information.

Requirements

Target platform

Desktop

Header

Ddrawint.h (include Winddi.h)

See also

DdDestroySurface

DD_DESTROYSURFACEDATA

DD_SURFACE_GLOBAL

DD_SURFACE_LOCAL

 

 

Send comments about this topic to Microsoft