IDirect3DExecuteBuffer::Validate

HRESULT Validate(LPDWORD lpdwOffset, LPD3DVALIDATECALLBACK lpFunc,

LPVOID lpUserArg, DWORD dwReserved);

Checks an execute buffer and returns an offset into the buffer when any errors are encountered. This method is a debugging routine.

·Returns D3D_OK if successful, or an error otherwise, which may be one of the following values:

DDERR_INVALIDOBJECT

DDERR_INVALIDPARAMS

lpdwOffset

Address of a variable that will be filled with the offset into the execute buffer at which an error was first detected. This parameter is filled in only if NULL is specified for the lpFunc parameter. If a callback function is specified for lpFunc, the offset for each error is passed to the callback function, and the lpdwOffset parameter is not set.

lpFunc

Address of an application-defined D3DVALIDATECALLBACK callback function. If this parameter is NULL, checking stops when the first error is detected.

lpUserArg

Address of application-defined data passed to the callback function.

dwReserved

Reserved for future use.

The callback function specified in the lpFunc parameter is called whenever an error is detected in the execute buffer. The system passes to this callback function the value specified in lpUserArg and the offset into the execute buffer where the error was detected.

This call fails if the Direct3DExecuteBuffer object is locked.