Lock

DWORD (APIENTRY *PDD_SURFCB_LOCK)(
   PDD_LOCKDATA lpLock
);

Lock provides a valid pointer to a block of memory associated with a surface.

Parameters

lpLock

Pointer to a DD_LOCKDATA structure that contains the information required to perform the lockdown.

Return Value

Lock returns a DDHAL_DRIVER_Xxx callback code that indicates how the driver handled the call. These return codes are defined in ddrawint.h.

Comments

A driver should ensure that a blt or flip is not in progress before obtaining the memory pointer.

A lock does not provide exclusive access to the requested memory block; that is, multiple threads can lock the same surface at the same time. It is the application’s responsibility to synchronize access to the memory block whose pointer is being obtained.